Ejemplo n.º 1
0
        public MainPage()
        {
            this.InitializeComponent();

            var nfcReader = ProximityDevice.GetDefault();

            nfcReader.SubscribeForMessage("NDEF",
                async (rdr, msg) =>
                {
                    var tagData = msg.Data.ToArray();
                    var currentTagRead = Encoding.ASCII.GetString(tagData);

                    var isDuplicate = currentTagRead == lastTagRead;

                    lastTagRead = currentTagRead;

                    var tagDataB64 = Convert.ToBase64String(tagData);

                    IClientCallbackStore<PushTriggerConfiguration, PushTriggerOutput> callbackStore = new AzureMobileAppCallbackStore();

                    var allCallbacks = await callbackStore.ReadCallbacksAsync();

                    foreach (var callback in allCallbacks)
                    {
                        if (callback.Configuration.SuppressDuplicates && isDuplicate)
                            continue;

                        await callback.InvokeAsync(new PushTriggerOutput()
                        {
                            TagReadB64 = tagDataB64
                        });
                    }
                }
                );
        }
Ejemplo n.º 2
0
        public async Task <HttpResponseMessage> RegisterCallback(string triggerId,
                                                                 [FromBody] TriggerInput <PushTriggerConfiguration, PushTriggerOutput> parameters)
        {
            // Store the callback
            ICallbackStore <PushTriggerConfiguration> callbackStore = new AzureMobileAppCallbackStore();

            await callbackStore.WriteCallbackAsync(triggerId,
                                                   parameters.GetCallback().CallbackUri,
                                                   parameters.inputs);

            // Report that everything is happy
            return(Request.PushTriggerRegistered(parameters.GetCallback()));
        }
Ejemplo n.º 3
0
        public async Task<HttpResponseMessage> RegisterCallback(string triggerId,
            [FromBody]TriggerInput<PushTriggerConfiguration, PushTriggerOutput> parameters)
        {

            // Store the callback
            ICallbackStore<PushTriggerConfiguration> callbackStore = new AzureMobileAppCallbackStore();

            await callbackStore.WriteCallbackAsync(triggerId,
                parameters.GetCallback().CallbackUri,
                parameters.inputs);

            // Report that everything is happy
            return Request.PushTriggerRegistered(parameters.GetCallback());

        }
Ejemplo n.º 4
0
        public MainPage()
        {
            this.InitializeComponent();

            var nfcReader = ProximityDevice.GetDefault();

            nfcReader.SubscribeForMessage("NDEF",
                                          async(rdr, msg) =>
            {
                var tagData        = msg.Data.ToArray();
                var currentTagRead = Encoding.ASCII.GetString(tagData);

                var isDuplicate = currentTagRead == lastTagRead;

                lastTagRead = currentTagRead;

                var tagDataB64 = Convert.ToBase64String(tagData);

                IClientCallbackStore <PushTriggerConfiguration, PushTriggerOutput> callbackStore = new AzureMobileAppCallbackStore();

                var allCallbacks = await callbackStore.ReadCallbacksAsync();

                foreach (var callback in allCallbacks)
                {
                    if (callback.Configuration.SuppressDuplicates && isDuplicate)
                    {
                        continue;
                    }

                    await callback.InvokeAsync(new PushTriggerOutput()
                    {
                        TagReadB64 = tagDataB64
                    });
                }
            }
                                          );
        }