57 import BotSenseCore
as bsCore
58 import BotSenseError
as bsError
59 import BotSenseTypes
as bsTypes
70 def ServerConnect(client, serverHostName='localhost',
71 serverPort=bsCore.BSPROXY_LISTEN_PORT_DFT):
72 bsTypes.BsClient.ChkClient(client)
73 rc = bsCore.bsServerConnect(client.pClient, serverHostName, serverPort)
74 bsError.ChkReturnIsOk(rc,
75 "Client %s: Failed to connect to bsProxy server at %s:%d." % \
76 (client.AttrGetName(), serverHostName, serverPort))
84 def ServerDisconnect(client):
85 bsTypes.BsClient.ChkClient(client)
86 rc = bsCore.bsServerDisconnect(client.pClient)
87 bsError.ChkReturnIsOk(rc,
88 "Client %s: Failed to disconnect from server." % (client.AttrGetName()))
98 def ServerReqGetVersion(client):
100 rc = bsCore.bsServerReqGetVersion(client.pClient, verstr, len(verstr))
101 bsError.ChkReturnIsOk(rc,
102 "Client %s: Server GetVersion request failed." % (client.AttrGetName()))
103 return verstr.rstrip(
'\x00')
114 def ServerReqLoopback(client, loopbackMsg):
115 bsTypes.BsClient.ChkClient(client)
116 txrxMsg = loopbackMsg
117 rc = bsCore.bsServerReqLoopback(client.pClient, txrxMsg)
118 bsError.ChkReturnIsOk(rc,
119 "Client %s: Server Loopback request failed." % (client.AttrGetName()))
129 def ServerReqSetLogging(client, level):
130 bsTypes.BsClient.ChkClient(client)
131 rc = bsCore.bsServerReqSetLogging(client.pClient, level)
132 bsError.ChkReturnIsOk(rc,
133 "Client %s: Server SetLogging request failed." % (client.AttrGetName()))
144 def ServerReqMsgTrace(client, hndVConn, trace):
145 bsTypes.BsClient.ChkClient(client)
150 rc = bsCore.bsServerReqMsgTrace(client.pClient, hndVConn, trace)
151 bsError.ChkReturnIsOk(rc,
152 "Client %s: Server MsgTrace request failed." % (client.AttrGetName()))
177 def ServerReqOpenDev(client, devName, modName, argbuf, appInfo, trace=False):
178 bsTypes.BsClient.ChkClient(client)
179 if appInfo
is not None:
180 bsError.ChkType(appInfo, bsTypes.BsClientAppInfo)
181 argByteBuf = bsTypes.ByteBuf.Clone(argbuf)
182 argByteBuf.copyToSwigObj(len(argByteBuf))
183 hndVConn = bsCore.bsServerReqOpenDev(client.pClient, devName, modName,
184 argByteBuf.getSwigObj(), len(argByteBuf), appInfo, trace)
185 bsError.ChkReturnIsNonNeg(hndVConn,
186 "Client %s: Server OpenDev request failed." % (client.AttrGetName()))
196 def ServerReqCloseDev(client, hndVConn):
197 bsTypes.BsClient.ChkClient(client)
198 rc = bsCore.bsServerReqCloseDev(client.pClient, hndVConn)
199 bsError.ChkReturnIsOk(rc,
200 "Client %s: Server CloseDev request failed." % (client.AttrGetName()))
211 def ServerReqGetVConnList(client):
212 bsTypes.BsClient.ChkClient(client)
213 vec = bsCore.BsVecHandles_T()
214 rc = bsCore.bsServerReqGetVConnList(client.pClient, vec)
215 bsError.ChkReturnIsOk(rc,
216 "Client %s: Server GetVConnList request failed." % (client.AttrGetName()))
218 for i
in xrange(vec.m_uCount):
219 listHnds += [bsCore.hndVConnArray_getitem(vec.m_vecHnd, i)]
232 def ServerReqGetVConnInfo(client, hndVConn):
233 bsTypes.BsClient.ChkClient(client)
234 info = bsTypes.BsVConnInfo()
235 rc = bsCore.bsServerReqGetVConnInfo(client.pClient, hndVConn, info)
236 bsError.ChkReturnIsOk(rc,
237 "Client %s: Server GetVConnInfo request failed." % (client.AttrGetName()))