| 199 | | def receiveCoins(self): |
| 200 | | methodlist = [u'internet',u'bluetooth'] |
| 201 | | method = appuifw.popup_menu(methodlist) |
| 202 | | |
| 203 | | cdd,alreadythere = self.getCurrentCurrency() |
| 204 | | transport = transports.HTTPTransport(cdd.issuerServiceLocation) |
| 205 | | |
| 206 | | if method ==1: |
| 207 | | self.receiveCoinsBT(transport) |
| 208 | | else: |
| 209 | | self.receiveCoinsHTTP(transport) |
| 210 | | |
| 211 | | self.makeWalletMenu() |
| 212 | | self.displayWalletMenu() |
| 213 | | |
| 214 | | |
| 215 | | |
| 216 | | |
| 217 | | def receiveCoinsBT(self,transport): |
| 218 | | if sys.platform == 'symbian_s60': |
| 219 | | import btsocket |
| 220 | | server_socket = btsocket.socket(btsocket.AF_BT, btsocket.SOCK_STREAM) |
| 221 | | port = btsocket.bt_rfcomm_get_available_server_channel(server_socket) |
| 222 | | server_socket.bind(("", port)) |
| 223 | | server_socket.listen(1) |
| 224 | | btsocket.bt_advertise_service( u"opencoin", server_socket, True, btsocket.RFCOMM) |
| 225 | | btsocket.set_security(server_socket, btsocket.AUTH) |
| 226 | | appuifw.note(u'waiting for connection') |
| 227 | | (sock,peer_addr) = server_socket.accept() |
| 228 | | |
| 229 | | else: |
| 230 | | import bluetooth as bt |
| 231 | | server_sock=bt.BluetoothSocket(bt.RFCOMM) |
| 232 | | server_sock.bind(("",bt.PORT_ANY)) |
| 233 | | server_sock.listen(1) |
| 234 | | port = server_sock.getsockname()[1] |
| 235 | | |
| 236 | | uuid = "9e72d9d8-e06d-41cb-bbd4-89cd052cccb8" |
| 237 | | |
| 238 | | bt.advertise_service( server_sock, u"opencoin",) |
| 239 | | |
| 240 | | sock, client_info = server_sock.accept() |
| 241 | | |
| 242 | | |
| 243 | | bt = transports.BTTransport(sock) |
| 244 | | self.wallet.getApproval = self.getApproval |
| 245 | | bt.send(self.wallet.listenSum(bt.receive())) |
| 246 | | bt.send(self.wallet.listenSpend(bt.receive(),transport)) |
| 247 | | |
| 248 | | |
| | 267 | |
| | 268 | |
| | 269 | def receiveCoinsBT(self,transport): |
| | 270 | if sys.platform == 'symbian_s60': |
| | 271 | import btsocket |
| | 272 | server_socket = btsocket.socket(btsocket.AF_BT, btsocket.SOCK_STREAM) |
| | 273 | port = btsocket.bt_rfcomm_get_available_server_channel(server_socket) |
| | 274 | server_socket.bind(("", port)) |
| | 275 | server_socket.listen(1) |
| | 276 | btsocket.bt_advertise_service( u"opencoin", server_socket, True, btsocket.RFCOMM) |
| | 277 | btsocket.set_security(server_socket, btsocket.AUTH) |
| | 278 | appuifw.note(u'waiting for bt connection') |
| | 279 | (sock,peer_addr) = server_socket.accept() |
| | 280 | |
| | 281 | else: |
| | 282 | import bluetooth as bt |
| | 283 | server_sock=bt.BluetoothSocket(bt.RFCOMM) |
| | 284 | server_sock.bind(("",bt.PORT_ANY)) |
| | 285 | server_sock.listen(1) |
| | 286 | port = server_sock.getsockname()[1] |
| | 287 | |
| | 288 | uuid = "9e72d9d8-e06d-41cb-bbd4-89cd052cccb8" |
| | 289 | |
| | 290 | bt.advertise_service( server_sock, u"opencoin",) |
| | 291 | |
| | 292 | sock, client_info = server_sock.accept() |
| | 293 | |
| | 294 | |
| | 295 | bt = transports.BTTransport(sock) |
| | 296 | self.wallet.getApproval = self.getApproval |
| | 297 | bt.send(self.wallet.listenSum(bt.receive())) |
| | 298 | bt.send(self.wallet.listenSpend(bt.receive(),transport)) |
| | 299 | import e32 |
| | 300 | e32.ao_sleep(1) |
| | 301 | |
| | 302 | |
| 347 | | #import btsocket as socket |
| 348 | | apid = socket.select_access_point() |
| 349 | | apo = socket.access_point(apid) |
| 350 | | #socket.set_default_access_point(apo) |
| 351 | | apo.start() |
| 352 | | self.apo = apo |
| 353 | | self.ip = apo.ip() |
| 354 | | |
| 355 | | except ImportError: |
| | 347 | appuifw.note(u'Preparing access points') |
| | 348 | aps = [ap['name'] for ap in socket.access_points()] |
| | 349 | aps.sort() |
| | 350 | apid = appuifw.popup_menu(aps,u'select access point') |
| | 351 | socket.set_default_access_point(aps[apid]) |
| | 352 | self.ip = 'some ip, s60' |
| | 353 | |
| | 354 | else: |