pebble-packet
v1.3.2
Published
Simple wrapper for AppMessage integer and string types with built in error reporting. Never directly use `DictionaryIterator` or `Tuple` again!
Downloads
4
Readme
pebble-packet
Simple wrapper for AppMessage integer and string types with built in error
reporting. Never directly use DictionaryIterator
or Tuple
again!
Available on NPM.
How to use
- Install the Pebble package:
$ pebble package install pebble-packet
- Add the pebble-package include at the top of your source.
#include <pebble-package/pebble-package.h>
- Ensure
AppMessage
is open:
const int inbox = 128;
const int outbox = 128;
events_app_message_request_inbox_size(inbox);
events_app_message_request_outbox_size(outbox);
events_app_message_open();
- Begin, build, and send a packet:
if(packet_begin()) {
packet_put_integer(AppKeyInteger, 42);
packet_put_string(AppKeyString, "Don't talk to me about life.");
packet_send();
}
- Get data from a received dictionary:
// in your setup after the app_message_open call
app_message_register_inbox_received(in_recv_handler);
static void in_recv_handler(DictionaryIterator *iter, void *context) {
if(packet_contains_key(iter, MESSAGE_KEY_Integer)) {
APP_LOG(APP_LOG_LEVEL_INFO, "Got int: %d", packet_get_integer(iter, MESSAGE_KEY_Integer));
}
if(packet_contains_key(iter, MESSAGE_KEY_String)) {
APP_LOG(APP_LOG_LEVEL_INFO, "Got string: %s", packet_get_string(iter, MESSAGE_KEY_String));
}
if(packet_contains_key(iter, MESSAGE_KEY_Boolean)) {
APP_LOG(APP_LOG_LEVEL_INFO, "Got int: %s", packet_get_boolean(iter, MESSAGE_KEY_Boolean) ? "true" : "false");
}
APP_LOG(APP_LOG_LEVEL_INFO, "Size: %d", packet_get_size(iter));
}
Documentation
See include/pebble-packet.h
for function documentation.
Changelog
1.0
- Initial version
1.1
- Add
packet_get_size()
,packet_contains_key()
,packet_put_boolean()
,packet_get_boolean()
,packet_get_integer()
, andpacket_get_string()
.
1.2
- Build for Diorite platform on SDK 4.0
1.3
- Add failed handler so client apps can retry their packets.
1.3.1
- Add
NULL
check for retry callbacks.