Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/waldekmastykarz/teams-meeting-agenda
https://github.com/waldekmastykarz/teams-meeting-agenda
Last synced: 28 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/waldekmastykarz/teams-meeting-agenda
- Owner: waldekmastykarz
- Created: 2021-01-18T11:48:08.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2021-05-05T06:57:31.000Z (over 3 years ago)
- Last Synced: 2024-04-28T01:50:13.854Z (6 months ago)
- Language: JavaScript
- Size: 142 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Agenda - Microsoft Teams App
Generate a Microsoft Teams application.
TODO: Add your documentation here
## Getting started with Microsoft Teams Apps development
Head on over to [Microsoft Teams official documentation](https://developer.microsoft.com/microsoft-teams?WT.mc_id=m365-0000-wmastyka) to learn how to build Microsoft Teams Tabs or the [Microsoft Teams Yeoman generator Wiki](https://github.com/PnP/generator-teams/wiki) for details on how this solution is set up.
## Project setup
All required source code are located in the `./src` folder - split into two parts
* `app` for the application
* `manifest` for the Microsoft Teams app manifestFor further details see the [Yo Teams wiki for the project structure](https://github.com/PnP/generator-teams/wiki/Project-Structure)
## Building the app
The application is built using the `build` Gulp task.
``` bash
npm i -g gulp gulp-cli
gulp build
```## Building the manifest
To create the Microsoft Teams Apps manifest, run the `manifest` Gulp task. This will generate and validate the package and finally create the package (a zip file) in the `package` folder. The manifest will be validated against the schema and dynamically populated with values from the `.env` file.
``` bash
gulp manifest
```## Configuration
Configuration is stored in the `.env` file.
## Debug and test locally
To debug and test the solution locally you use the `serve` Gulp task. This will first build the app and then start a local web server on port 3007, where you can test your Tabs, Bots or other extensions. Also this command will rebuild the App if you change any file in the `/src` directory.
``` bash
gulp serve
```To debug the code you can append the argument `debug` to the `serve` command as follows. This allows you to step through your code using your preferred code editor.
``` bash
gulp serve --debug
```To step through code in Visual Studio Code you need to add the following snippet in the `./.vscode/launch.json` file. Once done, you can easily attach to the node process after running the `gulp server --debug` command.
``` json
{
"type": "node",
"request": "attach",
"name": "Attach",
"port": 5858,
"sourceMaps": true,
"outFiles": [
"${workspaceRoot}/dist/**/*.js"
],
"remoteRoot": "${workspaceRoot}/src/"
},
```### Using ngrok for local development and hosting
In order to make development locally a great experience it is recommended to use [ngrok](https://ngrok.io), which allows you to publish the localhost on a public DNS, so that you can consume the bot and the other resources in Microsoft Teams.
To use ngrok, it is recommended to use the `gulp ngrok-serve` command, which will read your ngrok settings from the `.env` file and automatically create a correct manifest file and finally start a local development server using the ngrok settings.
### Additional build options
You can use the following flags for the `serve`, `ngrok-serve` and build commands:
* `--no-linting` - skips the linting of Typescript during build to improve build times
* `--debug` - builds in debug mode## Deployment
The solution can be deployed to Azure using any deployment method.
* For Azure Devops see [How to deploy a Yo Teams generated project to Azure through Azure DevOps](https://www.wictorwilen.se/blog/deploying-yo-teams-and-node-apps/)
* For Docker containers, see the included `Dockerfile`## Logging
To enable logging for the solution you need to add `msteams` to the `DEBUG` environment variable. See the [debug package](https://www.npmjs.com/package/debug) for more information. By default this setting is turned on in the `.env` file.
Example for Windows command line:
``` bash
SET DEBUG=msteams
```If you are using Microsoft Azure to host your Microsoft Teams app, then you can add `DEBUG` as an Application Setting with the value of `msteams`.