Great week. Great progress. I have got a working WhatsApp integration that I can finally use with a lot of other small improvements. But let's look into the details.
Functionality
🎉 I can finally start using the WhatsApp plugin. Now the plugin can receive and send messages. It can pipe the received messages through the Filter Resources and display in the Activity History. As part of the implementation, I have also added image and attachment support.
As I was working with the composer, I have fixed a bunch of smaller issues. I have also implemented a much better Contact Selector. There was a bug that the composer's state leaked between Plugins. e.g. if you tried to select WhatsApp plugin after a Gmail letter was sent, the Gmail integration value was kept. That integration was not valid with the WhatsApp plugin and caused issues.
I have put quite a bit of work into Filter Resources. I'm getting there to have a more or less standardized way of defining Resources that are only filtering the History Items synced from the integration.
Gmail
I haven't put much work into Gmail this week. I have fixed the issue with the syncing. It seems working now. But there was an even more important change: Gmail Plugin shows the 🖼️ images and 📎 attachments. 💪
UI work
I have done a bunch of small usability improvements. Please check the changelist ("What was finished") for more details.
Release
I have spent quite a bit of time fixing the release on Linux. There were a bunch of minor issues that needed to be fixed. The database migrations also had to be enabled at startup time.
What was finished
- WhatsApp
- ✅ Messages in History
- ✅ Resource creation
- ✅ Filtering
- Handling deleted messages
- ✅ Handling message changes
- ✅ Read state
- ✅ Image and attachment support
- ✅ Write message
- ✅ Make composer text/plain compatible
- ✅ Send message via WhatsApp
- ✅ Messages in History
- Gmail
- ✅ Display sent images and attachments
- UI Improvement
- ✅ Composer improvements
- ✅ Contact Selector
- ✅ Hid menu bar
- ✅ Added error page on initial loading screen
- ✅ Added better splash screen
- ✅ Added icon support to menus
- ✅ Made history filter smaller
- Release
- ✅ Fixed production build on Linux
- ✅ Enabled typeorm migrations at startup time
Work for next week
- Release the application and make it available on the website
- WhatsApp and Gmail fixed
- Support for Resource that can create Sub Activities per chat
Next week I want to focus on releasing the first beta version. In order to do that, I want to fix at least the Mac build. I need that build to give the application to my first beta testers - to my family 👪. I also want to fix a bunch of smaller issues around WhatsApp and Gmail plugins in order to avoid my beta testers running away after the first clicks.
Backlog
- UI update
- Apply Contexty colours on the app
- Add Contexty icon
- Create easy to access menus (always visible icons)
- Make Resource sidebar disappear and only show by clicking a menu item.
- Favourite menu items and filter based on them
- Filter items based by Label
- Display Participants of the Activity
- Contacts
- Sync Google contacts into Contexty
- Add the content of the original message as quoted text to the composer.
- 👾 i18n support
- 🪲 Switching Activity should scroll to the end (or first unread(?))
- Keyboard shortcuts
- Add Recipient(s) to the HistoryItem - The recipients are currently not saved on the History Item. 🙈
New items identified during the week
- 🪲 Offline support - currently the plugin make the CPU spin when the computer goes offline.
- No support for deleted message
- No support for reactions - the system doesn't have an understanding of reactions and the reaction messages are displayed as Not supported message.
- Reply functionality is not working - I need to store the whole message to make it happen.
- No Resource that could create Sub Activities per chat as the messages come in.
- In general, there is no Chat creation at all.
- Read by others - this is an information that is not supported by the system.
Composer
- Auto selecting integration when only 1 is available
- Navigating by keyboard - e.g. it's very annoying that the
tab
button jump on the formatting options instead of the message body. - 🪲 Recipients are cached per integration, even though integration is not a mandatory field. This needs to be fixed.
- No attachment and images in the sent message. Something that is not supported by the system yet.
Gmail Plugin
- Rework Resources in order to make use of FilterResource
Release
- Get Mac production build working
- Get Windows production build working
- Release it❗
- Change webpack configuration to avoid problems with typeorm migrations.