Skip to content

Commit

Permalink
fix variables names
Browse files Browse the repository at this point in the history
  • Loading branch information
mzaatar committed Apr 1, 2019
1 parent aa9b048 commit 63f20f1
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 25 deletions.
3 changes: 2 additions & 1 deletion DDD.Functions/local.settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@
// TitoSync
"TitoSyncSchedule": "* * * * *",
"TitoTable": "Tito",
"TitoEventId": "44602457150",
"TitoEventId": "dddperth2019",
"TitoAccountId": "dddperth",
"StopSyncingTitoFrom": "2018-06-18T23:59:59+08:00",
// GetSubmissions
"SubmissionsAvailableFrom": "2018-06-05T08:00:00+08:00",
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,19 +5,19 @@ This project contains backend functionality to run the DDD conferences, includin
* Syncing data from [Sessionize](https://sessionize.com/) to Azure Table Storage (tenanted by conference year) for submitted sessions (and submitters) and separate to that, selected sessions (and presenters)
* APIs that return submission and session (agenda) information during allowed times
* APIs to facilitate voting by the community against (optionally anonymous) submitted sessions (notes stored to Azure Table Storage tenanted by conference year) including various mechanisms to detect fraud
* Syncing Eventbrite order IDs and Azure App Insights voting user IDs to assist with voting fraud detection and validation
* Syncing Tito order IDs and Azure App Insights voting user IDs to assist with voting fraud detection and validation
* API to return analysed voting information
* Ability to trigger an Azure Logic App when a new session is detected from Sessionize (which can then be used to create Microsoft Teams / Slack notifications for visibility to the organising committee and/or to trigger moderation actions)
* Eventbrite webhook to take order notifications, de-duplicate them and place them in queue storage so they can be picked up by a Logic App (or similar) to do things like create Microsoft Teams / Slack notifications for visibility to the organising committee
* Tito webhook to take order notifications, de-duplicate them and place them in queue storage so they can be picked up by a Logic App (or similar) to do things like create Microsoft Teams / Slack notifications for visibility to the organising committee
* Getting feedback information and prize draw names

# Structure

* `DDD.Core`: Cross-cutting logic and core domain model
* `DDD.Functions`: Azure Functions project that contains:
* `AppInsightsSync`: C# Azure Function that syncs app insights user IDs to Azure Table Storage for users that submitted a vote
* `EventbriteNotification`: Node.js Azure Function that exposes a web hook URL that can be added to Eventbrite (via Account Settings > Webhooks) for the `order.placed` action that will then de-duplicate webhook events and push them to queue storage for further processing (e.g. via a Logic App)
* `EventbriteSync`: C# Azure Function that syncs Eventbrite order IDs to Azure Table Storage for a configured event
* `TitoNotification`: Node.js Azure Function that exposes a web hook URL that can be added to Tito (via Account Settings > Webhooks) for the `order.placed` action that will then de-duplicate webhook events and push them to queue storage for further processing (e.g. via a Logic App)
* `TitoSync`: C# Azure Function that syncs Tito order IDs to Azure Table Storage for a configured event
* `GetAgenda`: C# Azure Function that returns sessions and presenters that have been approved for agenda
* `GetSubmissions`: C# Azure Function that returns submissions and submitters for use with either voting or showing submitted sessions
* `GetVotes`: C# Azure Function that returns analysed vote information; can be piped into Microsoft Power BI or similar for further processing and visualisation
Expand Down Expand Up @@ -141,7 +141,7 @@ The `NewSessionNotificationLogicAppUrl` value is gotten by creating a logic app
* `Post message` action (for Teams/Slack) with something like `@{join(actionOutputs('Compose'), ', ')} submitted a talk '@{triggerBody()?['Session']['Title']}' as @{triggerBody()?['Session']['Format']} / @{triggerBody()?['Session']['Level']} with tags @{join(triggerBody()?['Session']['Tags'], ', ')}.`
* `Send an email` action (for O365/GMail/Outlook.com depending on what you have) that sends an email if the previous step failed (via `Configure run after`)

# Eventbrite notification logic app
# Tito notification logic app

The logic app would roughly have:

Expand Down
14 changes: 8 additions & 6 deletions infrastructure/Deploy.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ Param (
[string] [Parameter(Mandatory = $true)] $NewSessionNotificationLogicAppUrl,
[string] [Parameter(Mandatory = $true)] $DeploymentZipUrl,
[string] [Parameter(Mandatory = $true)] $SessionizeApiKey,
[string] [Parameter(Mandatory = $true)] $EventbriteApiBearerToken,
[string] [Parameter(Mandatory = $true)] $TitoApiBearerToken,
[string] [Parameter(Mandatory = $true)] $SubmissionsAvailableFrom,
[string] [Parameter(Mandatory = $true)] $SubmissionsAvailableTo,
[string] [Parameter(Mandatory = $true)] $AnonymousSubmissions,
Expand All @@ -31,8 +31,9 @@ Param (
[string] [Parameter(Mandatory = $true)] $MinVotes,
[string] [Parameter(Mandatory = $true)] $MaxVotes,
[string] [Parameter(Mandatory = $true)] $StopSyncingSessionsFrom,
[string] [Parameter(Mandatory = $true)] $EventbriteEventId,
[string] [Parameter(Mandatory = $true)] $StopSyncingEventbriteFrom,
[string] [Parameter(Mandatory = $true)] $TitoEventId,
[string] [Parameter(Mandatory = $true)] $TitoAccountId,
[string] [Parameter(Mandatory = $true)] $StopSyncingTitoFrom,
[string] [Parameter(Mandatory = $true)] $AppInsightsApplicationId,
[string] [Parameter(Mandatory = $true)] $AppInsightsApplicationKey,
[string] [Parameter(Mandatory = $true)] $StartSyncingAppInsightsFrom,
Expand All @@ -54,7 +55,7 @@ function Get-Parameters() {
"newSessionNotificationLogicAppUrl" = $NewSessionNotificationLogicAppUrl;
"deploymentZipUrl" = $DeploymentZipUrl;
"sessionizeApiKey" = $SessionizeApiKey;
"eventbriteApiBearerToken" = $EventbriteApiBearerToken;
"titoApiBearerToken" = $TitoApiBearerToken;
"submissionsAvailableFrom" = $SubmissionsAvailableFrom;
"submissionsAvailableTo" = $SubmissionsAvailableTo;
"anonymousSubmissions" = $AnonymousSubmissions;
Expand All @@ -63,8 +64,9 @@ function Get-Parameters() {
"votingAvailableTo" = $VotingAvailableTo;
"minVotes" = $MinVotes;
"maxVotes" = $MaxVotes;
"eventbriteEventId" = $EventbriteEventId;
"stopSyncingEventbriteFrom" = $StopSyncingEventbriteFrom;
"titoEventId" = $TitoEventId;
"titoAccountId" = $TitoAccountId;
"stopSyncingTitoFrom" = $StopSyncingTitoFrom;
"appInsightsApplicationId" = $AppInsightsApplicationId;
"appInsightsApplicationKey" = $AppInsightsApplicationKey;
"startSyncingAppInsightsFrom" = $StartSyncingAppInsightsFrom;
Expand Down
24 changes: 14 additions & 10 deletions infrastructure/azuredeploy.json
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@
"sessionizeApiKey": {
"type": "securestring"
},
"eventbriteApiBearerToken": {
"titoApiBearerToken": {
"type": "securestring"
},
"submissionsAvailableFrom": {
Expand Down Expand Up @@ -77,10 +77,13 @@
"maxVotes": {
"type": "string"
},
"eventbriteEventId": {
"titoEventId": {
"type": "string"
},
"stopSyncingEventbriteFrom": {
"titoAccountId": {
"type": "string"
},
"stopSyncingTitoFrom": {
"type": "string"
},
"appInsightsApplicationId": {
Expand All @@ -106,8 +109,8 @@
"appInsightsLocation": "East US",
"sessionizeReadModelSyncSchedule": "0 */5 * * * *",
"votingTable": "Votes",
"eventbriteSyncSchedule": "0 */5 * * * *",
"eventbriteTable": "Eventbrite",
"titoSyncSchedule": "0 */5 * * * *",
"titoTable": "Tito",
"appInsightsSyncSchedule": "0 */5 * * * *",
"appInsightsTable": "AppInsights",
"submissionsTable": "Submissions",
Expand Down Expand Up @@ -196,7 +199,7 @@
"SessionizeApiKey": "[parameters('sessionizeApiKey')]",
"SessionizeReadModelSyncSchedule": "[variables('sessionizeReadModelSyncSchedule')]",
"StopSyncingSessionsFrom": "[parameters('stopSyncingSessionsFrom')]",
"EventbriteApiBearerToken": "[parameters('eventbriteApiBearerToken')]",
"TitoApiBearerToken": "[parameters('titoApiBearerToken')]",
"SubmissionsAvailableFrom": "[parameters('submissionsAvailableFrom')]",
"SubmissionsAvailableTo": "[parameters('submissionsAvailableTo')]",
"AnonymousSubmissions": "[parameters('anonymousSubmissions')]",
Expand All @@ -205,10 +208,11 @@
"VotingTable": "[variables('votingTable')]",
"VotingAvailableFrom": "[parameters('votingAvailableFrom')]",
"VotingAvailableTo": "[parameters('votingAvailableTo')]",
"EventbriteSyncSchedule": "[variables('eventbriteSyncSchedule')]",
"EventbriteTable": "[variables('eventbriteTable')]",
"EventbriteEventId": "[parameters('eventbriteEventId')]",
"StopSyncingEventbriteFrom": "[parameters('stopSyncingEventbriteFrom')]",
"TitoSyncSchedule": "[variables('titoSyncSchedule')]",
"TitoTable": "[variables('titoTable')]",
"TitoEventId": "[parameters('titoEventId')]",
"TitoAccountId": "[parameters('titoAccountId')]",
"StopSyncingTitoFrom": "[parameters('stopSyncingTitoFrom')]",
"MinVotes": "[parameters('minVotes')]",
"MaxVotes": "[parameters('maxVotes')]",
"AppInsightsSyncSchedule": "[variables('appInsightsSyncSchedule')]",
Expand Down
7 changes: 4 additions & 3 deletions infrastructure/local.private.template.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
"NewSessionNotificationLogicAppUrl": "",
"DeploymentZipUrl": "",
"SessionizeApiKey": "",
"EventbriteApiBearerToken": "",
"TitoApiBearerToken": "",
"SubmissionsAvailableFrom": "2018-06-05T08:00:00+08:00",
"SubmissionsAvailableTo": "2018-06-14T23:59:59+08:00",
"AnonymousSubmissions": "true",
Expand All @@ -19,8 +19,9 @@
"MinVotes": "8",
"MaxVotes": "12",
"StopSyncingSessionsFrom": "2018-06-14T23:59:59+08:00",
"EventbriteEventId": "44602457150",
"StopSyncingEventbriteFrom": "2018-06-14T23:59:59+08:00",
"TitoEventId": "dddperth2019",
"TitoAccountId": "dddperth",
"StopSyncingTitoFrom": "2018-06-14T23:59:59+08:00",
"AppInsightsApplicationId": "",
"AppInsightsApplicationKey": "",
"StartSyncingAppInsightsFrom": "2018-06-05T08:00:00+08:00",
Expand Down

0 comments on commit 63f20f1

Please sign in to comment.