Working dfrotz backend

This commit is contained in:
HanzZ 2011-10-18 20:10:09 +02:00
parent 0fa08124e6
commit 93b2e86e9c
5 changed files with 12 additions and 8 deletions

View file

@ -6,7 +6,7 @@ FILE(GLOB SRC *.c *.cpp)
ADD_EXECUTABLE(spectrum2_frotz_backend ${SRC})
target_link_libraries(spectrum2_frotz_backend transport pthread transport-plugin)
target_link_libraries(spectrum2_frotz_backend transport pthread transport-plugin ${Boost_LIBRARIES} ${SWIFTEN_LIBRARY} ${LOG4CXX_LIBRARIES})
INSTALL(TARGETS spectrum2_frotz_backend RUNTIME DESTINATION bin)

View file

@ -155,12 +155,17 @@ class FrotzNetworkPlugin : public NetworkPlugin {
m_factories = new Swift::BoostNetworkFactories(loop);
m_conn = m_factories->getConnectionFactory()->createConnection();
m_conn->onDataRead.connect(boost::bind(&FrotzNetworkPlugin::_handleDataRead, this, _1));
m_conn->connect(Swift::HostAddressPort(Swift::HostAddress(host), port));
// m_conn->onConnectFinished.connect(boost::bind(&FrotzNetworkPlugin::_handleConnected, this, _1));
// m_conn->onDisconnected.connect(boost::bind(&FrotzNetworkPlugin::handleDisconnected, this));
}
void sendData(const std::string &string) {
m_conn->write(Swift::createSafeByteArray(string));
}
void _handleDataRead(boost::shared_ptr<Swift::SafeByteArray> data) {
std::string d = Swift::safeByteArrayToString(*data);
std::string d(data->begin(), data->end());
handleDataRead(d);
}
@ -234,7 +239,8 @@ class FrotzNetworkPlugin : public NetworkPlugin {
return games;
}
void handleMessageSendRequest(const std::string &user, const std::string &legacyName, const std::string &message, const std::string &/*xhtml*/) {
void handleMessageSendRequest(const std::string &user, const std::string &legacyName, const std::string &message, const std::string &xhtml = "") {
std::cout << "aaa\n";
if (message.find("start") == 0) {
std::string game = message.substr(6);
std::vector<std::string> lst = getGames();

View file

@ -502,7 +502,7 @@ class SpectrumNetworkPlugin : public NetworkPlugin {
void setDefaultAccountOptions(PurpleAccount *account) {
int i = 0;
gchar **keys = g_key_file_get_keys (keyfile, "purple", NULL, NULL);
while (keys[i] != NULL) {
while (keys && keys[i] != NULL) {
std::string key = keys[i];
PurplePlugin *plugin = purple_find_prpl(purple_account_get_protocol_id(account));

View file

@ -487,7 +487,6 @@ void NetworkPlugin::handleDataRead(std::string &data) {
handleLogoutPayload(wrapper.payload());
break;
case pbnetwork::WrapperMessage_Type_TYPE_PING:
LOG4CXX_INFO(logger, "PING RECEIVED");
sendPong();
break;
case pbnetwork::WrapperMessage_Type_TYPE_CONV_MESSAGE:
@ -558,7 +557,6 @@ void NetworkPlugin::sendPong() {
wrap.SerializeToString(&message);
send(message);
LOG4CXX_INFO(logger, "PONG");
sendMemoryUsage();
}

View file

@ -11,9 +11,9 @@ admin_password=test
#cert=server.pfx #patch to PKCS#12 certificate
#cert_password=test #password to that certificate if any
users_per_backend=10
backend=/home/hanzz/code/libtransport/backends/libpurple/spectrum2_libpurple_backend
#backend=/home/hanzz/code/libtransport/backends/libpurple/spectrum2_libpurple_backend
#backend=/usr/bin/mono /home/hanzz/code/networkplugin-csharp/msnp-sharp-backend/bin/Debug/msnp-sharp-backend.exe
#backend=/home/hanzz/code/libtransport/backends/frotz/spectrum2_frotz_backend
backend=/home/hanzz/code/libtransport/backends/frotz/spectrum2_frotz_backend
#backend=../../backends/libircclient-qt/spectrum2_libircclient-qt_backend
#protocol=prpl-msn
protocol=any