Граф коммитов

119 Коммитов

Автор SHA1 Сообщение Дата
Henrik Frystyk Nielsen 7b89f69ce5 Fixed casing of InstaSharp in sample comments 2016-03-29 07:54:01 -07:00
Gaurav Arora fccb722c14 Update README.md
Added announcement for RC1
2016-03-27 06:19:22 -07:00
Henrik Frystyk Nielsen 0648bad005 Generic JSON WebHook receiver now supports any JSON (objects, arrays, values) instead of just objects. 2016-03-27 05:53:52 -07:00
Henrik Frystyk Nielsen 7ce1ac9634 Removed initial Instagram client used to subscribe and unsubscribe from Instagram and instead use the popular Instasharp client from 'http://instasharp.org/'.
To just receive WebHooks, there are no dependencies on Instasharp, but it is great tool for subscribing or unsubscribing from Instagram WebHooks as well as for receiving media posted etc.
2016-03-26 10:04:36 -07:00
Henrik Frystyk Nielsen 5d77386192 Updated Instagram receiver to new model provided by Instagram. This means that geo- and tag-based subscriptions no longer work. Only user-based subscriptions which again mean that we must have an OAuth token in order to actually receive the media posted.
Updated Instagram receiver sample to reflect this: It now supports oauth authentication for a user to log in and to consent an Instagram Application. Once that is done, it is possible to receive notifications,
2016-03-25 11:55:49 -07:00
Henrik Frystyk Nielsen 25c8498ecc Added dropbox sample 2016-03-11 16:30:39 -08:00
Matthieu Maitre 6958689c68 Enforce mandatory properties in Azure Alert payload
- Tag mandatory properties with Required.Always so JSON.NET enforces the requirement during (de)serialization
- Fix a couple of comment typos on KuduNotification
- Add required 'resourceRegion' property to AlertMessage1.json test content
- Add AlertMessage3.json to validate change against sample payload in Azure docs
- Add unit tests
2016-03-04 00:00:13 -08:00
Henrik Frystyk Nielsen 1567075740 Simplified webhook secret validation in WebHookManager.ValidateWebHookAsync 2016-02-28 06:56:55 -08:00
Henrik Frystyk Nielsen 690b54e93b Added extra validation of WebHook instances during registration. As not all instances come in through the ASP.NET Web API registration controller, we have to run validation explicitly to verify that we have a correct WebHook registration.
To validate a WebHook instance, call IWebHookManager.VerifyWebHookAsync which will also verify that the registered WebHook URI is valid.
2016-02-27 21:30:29 -08:00
Henrik Frystyk Nielsen b779b4b439 Made it possible to hook into the default WebHookSender instance and get called when a WebHook succeeds, is gone, or fails. This enables for a variety of post-send processing scenarios where an implementation may want to take certain actions depending on the result of a WebHook send. 2016-02-23 12:53:56 -08:00
Henrik Frystyk Nielsen 4532a2b168 Added convenience setter for IWebHookReceiverConfig on ReceiverServices so that users don't *have* to use DI to change the default implementation. It of course still works *if* they want to use DI, not it is just not a hard requirement just to change where config settings come from. 2016-02-22 13:00:26 -08:00
John Luo 75599639f0 Fix Security Advisory 3137909 update 2016-02-20 21:10:13 -08:00
Henrik Frystyk Nielsen a7e0496fa7 Added support for intercepting the WebHook registration process when going through the WebHookRegistrationsController Web API controller allowing an IWebHookRegistrar implementation to change, modify, or reject WebHook registrations as they are created or updated.
This can for example be used to add filters to registrations enabling broadcast notifications or specific group notifications. Filters added this way can either be publicly visible or private filters intended for server side processing only.

In the former case, any filters added in an IWebHookRegistrar implementation  must be listed by an IWebHookFilterManager implementation. In the latter case, the filter must be prefixed by the string "MS_Private_" to remain hidden from the user. Failure to do either of these will lead to WebHook registration updates being rejected due to unknown filters.
2016-02-20 20:42:37 -08:00
Henrik Frystyk Nielsen 65a11321ab Minor code tweak 2016-02-13 07:29:56 -08:00
Henrik Frystyk Nielsen 3e619a5c5b Fixed file header. 2016-02-11 16:33:58 -08:00
John Luo 53d6efb782 Microsoft Security Advisory 3137909 2016-02-11 16:16:08 -08:00
Henrik Frystyk Nielsen 73cce743bf Added more tests. 2016-02-10 15:33:46 -08:00
Henrik Frystyk Nielsen 2c396817a9 Added test to SqlWebHookStore 2016-02-08 16:54:17 -08:00
Henrik Frystyk Nielsen b4a82392fd Minor tweaks to tests and resource strings. 2016-02-08 07:55:31 -08:00
Henrik Frystyk Nielsen 09b4ea6f92 Added support for parsing Slash Outgoing WebHook commands and slash commands style of the format
/command action value
  /command action p1=v1; p2=v2; ...

An example of an outgoing WebHook or slash command using the first format is '/assistant query what's the weather?' where '/assistant' is the trigger word or slash command, 'query' is the action and 'what's the weather?' is the value.

In the second form, parameter values containing semi-colons can either escape the semi-colon using a backslash character, i.e '\;', or quote the value using single quotes or double quotes. An example of an outgoing WebHook or slash command using this format is '/appointment add title=doctor visit; time=Feb 3 2016 2 PM; location=Children's Hospital' where '/appointment' is the trigger word or slash command, 'add' is the action and title, time, and location are parameters.

This makes it much simpler to add support for Slack slash commands and outgoing webhook that take parameters from the user.

Updated the SlackSample to illustrate use of this for both outgoing webhooks and slash commands.
2016-02-07 10:16:55 -08:00
Henrik Frystyk Nielsen 1f599d1213 Improved support for Slack Slash commands described at 'https://api.slack.com/slash-commands' We now provide support for more easily responding with structured text allowing you to fully take advantage of all Slash Command features including including images, tables, and a variety of properties including author, title, etc. 2016-02-02 14:33:18 -08:00
Henrik Frystyk Nielsen 2f604fdb8e Update README.md
Added link to CRM blog
2016-01-30 22:03:09 -08:00
Henrik Frystyk Nielsen aed0555c3c Update README.md
Updated readme with new blog links
2016-01-30 17:30:17 -08:00
Henrik Frystyk Nielsen c22bdcbeea Updated WebJob project 2016-01-30 16:17:23 -08:00
Henrik Frystyk Nielsen afb2ba7b49 Updated sample to use RunAndBlock 2016-01-30 12:10:54 -08:00
Henrik Frystyk Nielsen 0d2079c0d6 Facilitates creating and sending WebHooks from outside the context of a Controller or ApiController, for example from an Azure WebJob. When used with WebJobs, this can be used for sending WebHooks as a result of a messages arriving for a WebJob triggered by an Azure queue, blog, table, Service Bus Queue, or any other source that can trigger a WebJob, see https://azure.microsoft.com/en-us/documentation/articles/websites-webjobs-resources/ for more details. 2016-01-29 19:17:12 -08:00
Henrik Frystyk Nielsen 2a746403be Renamed SettingsProvider class to DefaultSettingsProvider in order not to conflict with System.Configuration.SettingsProvider. 2016-01-29 10:15:54 -08:00
Brian Weeteling 603c3b1505 Add Stripe Sample Project
Add MS_WebHookStripeInTestMode to execute custom StripeWebHookHandlers for test events ('evt_00000000000000')
Add StripeEvent and StripeEventData classes
2016-01-27 16:21:43 -08:00
Henrik Frystyk Nielsen 73e811072b Update README.md
Added details to update links
2016-01-23 07:56:37 -08:00
Henrik Frystyk Nielsen 5745e1049c Removed problematic references to System.IO required by older DataProtection builds. 2016-01-16 15:49:15 -08:00
Henrik Frystyk Nielsen 0c7fbf253b Tweak test settings to help CI machine 2016-01-16 07:26:12 -08:00
Henrik Frystyk Nielsen 62cabb1409 Addressed issue #35 making it easier to find the names of the receivers. 2016-01-13 14:51:10 -08:00
Henrik Frystyk Nielsen d61858aab2 Fixed nuspecs 2016-01-11 14:13:34 -08:00
Andrew Shen 101c2e0900 Add support for Microsoft Dynamics CRM 2016-01-11 11:55:39 -08:00
pdekkers dabaf4fd3a Added predicate to NotifyAsync functions 2016-01-11 08:25:44 -08:00
Henrik Frystyk Nielsen 63473dbee0 Moved to ASP.NET 5 Data Protection version rc1-final. 2016-01-09 16:22:32 -08:00
Henrik Frystyk Nielsen c31630975a Added tests for Azure queue support. 2016-01-09 12:54:18 -08:00
Henrik Frystyk Nielsen 3fa937b96f Update README.md
Added latest blogs
2016-01-01 12:21:24 -08:00
Henrik Frystyk Nielsen 43d7515608 Added logging messages for test WebHooks so that it is clear that they are processed as expected. 2015-12-31 15:35:42 -08:00
Henrik Frystyk Nielsen 8c452662ec Added abstraction for making it simple to control how WebHooks are sent. Now it is easy to enqueue messages into something like an Azure Storage Queue and also to control the format of what the actual WebHooks messages look like. This means that if you want the message format to be different then it's now easy to do.
Added support for sending WebHooks directly to an Azure Storage Queue and also a mechanism for dequeing messages from the queue and then send out the WebHooks as normal. That allows for implementing highly scalable systems where the outgoing WebHooks are persisted in a queue and then can be sent from any number of queue client that poll for messages as they become available.
2015-12-30 20:46:39 -08:00
Alex Lindgren e1b04c9463 Update param name to match IWebHookHandler
This class doesn't seem to use the param, so shouldn't effect anything but it should be consistently named.
2015-11-30 09:51:09 -08:00
Henrik Frystyk Nielsen f888e59d85 Tweaked concurrency settings for tests to help CI machine. 2015-11-29 08:38:36 -08:00
Henrik Frystyk Nielsen c01f3b6d76 Trying things for fixing test timeouts on slow CI machine. 2015-11-28 15:34:17 -08:00
Henrik Frystyk Nielsen 6523bb08c5 Added support for notifying all users who have subscribed to a particular event. Within an ApiController, a Controller, or anywhere else you can now call NotifyAllAsync(...).
Also enabled to pass a predicate that can further process the selected WebHooks so that they can be further filtered.

Henrik
2015-11-28 13:44:25 -08:00
Henrik Frystyk Nielsen 97a2d2b561 Include exception message when encountering invalid JSON and XML. 2015-11-22 11:59:11 -08:00
Henrik Frystyk Nielsen 46abd0d0e5 Extended SQL connection timeout to 30 secs from 15 secs (default) to accommodate slow builder machines. 2015-11-19 10:55:06 -08:00
Henrik Frystyk Nielsen 3d07fefe26 Removed unnecessary sample code. 2015-11-16 15:48:48 -08:00
Henrik Frystyk Nielsen f77d4e4929 Updated readme 2015-11-14 22:26:09 -08:00
Henrik Frystyk Nielsen f1552ccca3 Added MailChimp sample using ASP.NET Web API Self-host. For details on self-hosting, please see 'http://www.asp.net/web-api/overview/hosting-aspnet-web-api/use-owin-to-self-host-web-api' 2015-11-12 08:26:35 -08:00
Henrik Frystyk Nielsen 69954312d4 Fix up style cop issues in samples. 2015-11-11 15:18:59 -08:00