What is WebCal?
The WebCal functionality allows subscribing to the Events of Objects, Object Classes, Users, Resources, and Projects from farmerswife in your local 3rd party calendar application, like Google Calendar app (mobile/web) and Apple Calendar (macOS, iOS, iPadOS app).
WebCal can be also used with any other software that supports the WebCal standard protocol and "Digest Access authentication" (see http://en.wikipedia.org/wiki/Digest_access_authentication for more info).
Notes:
Google Calendar does not support this authentication mechanism. Therefore since version 5.1, we have added a new option to define a unique WebCal Direct URL Key Access per user, so WebCal can be also used from Google Calendar. Important: The WebCal Direct URL Key Access intentionally bypasses the farmerswife authentication, the resulting WebCal links are by design public! Try to at least add some complexity to the "key". Also note, that the refresh on/by Google Calendar is up to 12 hours!
Outlook Calendar no longer supports WebCal's "digest Access authentication" or "WebCal Direct URL Access". While you can import an ics file, it will only be a snapshot of the events and not support newly-added events in farmerswife.
Another workaround is to subscribe to the calendar from the Outlook Web Application, but Outlook has reported a refresh update time of 4+ hours.
(Please read more here)
Who can use WebCal?
- Advanced Users and Web Users
- Resources who have been granted Web Access
- Clients (see details at the bottom of this document)
!!! You need Admin User Permission with access to Server Setup to be able to edit Web Share Settings described in this article !!!
TABLE OF CONTENTS
Configuring WebCal
1. "Url To Server" and "Http Port"
If you are a farmerswife cloud-hosted customer - please IGNORE this part and go straight to section 2
For this feature to work, you need to configure the Http Port and the Url To Server settings in farmerswife Server app > Setup > General tab > Legacy HTTP Settings > ...
- Http Port: This port is by default set to 27000.
- Url To Server: This setting defines the “accessible” location of the farmerswife Server application. Enter your public IP address or domain name; the “WebCal Index page” then uses this information.
IMPORTANT: To access both Http Port and Url To Server from inside or outside your local area network (LAN) you have to properly open and “port forward” the Http Port value (TCP in/out) on your Internet Router and ensure this port is open on any involved firewall. See the “Server Ports and Access Tiers” PDF for more detailed information.
Since v6.6 / v6.7 there are now 3 settings available, to improve for a clean URL and a more secure way to hide the used ports info from the URL.
Added two new options in fw Server > Setup > General > Legacy HTTP Settings > sub-menu:
- "Automatically Add Web Client Port To "URL To Server":
- "Automatically Add Old Web Client Port To "URL To Server" For Webcal:" webcal can be configured to not append ports to calendars and the "Open WebCal Index" feature.
- "Force webcal:// Instead Of Scheme In "URL To Server"": Disable to stop forcing webcal URI scheme, instead it will use the "URL To Server" scheme.
2. Enable WebCal
In WIFE Client > Toolbox > Settings > Server Setup > Web Share Settings > WebCal, configure the following options:
- Mark the Enabled checkbox to turn the feature on.
- Select the days that will be updated: in Show Days Before / After
- Enable the option to Allow WebCal URL Key Access, to be able to define a WebCal URL Key Access for Resources, and also for Users who use Google Calendar.
IMPORTANT for the above image: "Allow WebCal URL Key Access" is ONLY intended to be used, if event subscription on Google Calendar is needed; or if it's intentionally needed to allow to bypass the user authentication to access the event subscription data!
3. Allow access and set up permissions
Each User or Resource that needs to use WebCal must have it enabled in his or her Web Permission Profile: Allowed Access Tiers > Webcal (iCal, Outlook, etc. calendar subscription).
- To allow subscribing to own Object only, enable Events > Objects > His Own Object > Can View
- To allow subscribing to all Objects, enable Events > All Objects > Can View
- To allow subscribing to only some Objects, enable them under Events > Specific Object Level Control
- To allow subscribing to Projects where User/Resource in involved, enable Projects > Show > Projects That He Has A Relation To
Note that all of these options need to be enabled in combination with any of the following options, depending on the needs:
- Events > Show Event > Always
- Events > Show Event > If He Has A Relation To Its Project
- Events > Show Event > If He Is Involved In It
For more details on the Web Profile Manager, please refer to the Web Permission Profiles.
4. Define Direct URL Key Access
For Users who must use Google Calendar, you need to define a direct URL Key Access on their profile. Google only allows its own authentication. By using this setting, you are bypassing the standard farmerswife user's authentication.
Per-User > open the Modify User window (in Object Manager) > click on the drop-down menu next to the Permission Profile and define a unique URL key, e.g. the user’s Nick Name + more info e.g. initials of who is configuring this setting and maybe the date since when this is active; don't uses "spaces".
If this is needed for a Contact type Resource > open the Modify Contact window (in Toolbox > Contacts) > click on the drop-down menu next to Web Access and define a unique URL key – define a unique URL key, e.g. the user’s Nick Name + more info e.g. initials of who is configuring this setting and maybe the date since when this is active; don't uses "spaces".
Using WebCal
Accessing the WebCal Index page
Advanced Users can access the WebCal index from within the farmerswife Client, by clicking on Menu and selecting Open WebCal Index.
On Windows: | On macOS: |
Else open a web browser (Firefox, Chrome, Safari, Internet Explorer) and type:
http://<Your Url To Server>:<Your Http Port>/webcal/index.html
Once in, log in with your farmerswife user access credentials.
When using the defined URL Key, it should be present in the address:
Example: Peter Moore has defined a URL Key of "pmoore"
Now when accessing Peter's available WebCalendars, the same URL key should be present in the address.
Note: If the URL key is not present in the address, you can manually paste it between webcal/ and /index (as in the photo below)
Now any calendars you subscribe to will include the URL Key authentication Google needs.
Subscribing to a WebCal on Google Calendar
Notes:
Google Calendar needs the option to define a unique WebCal Direct URL Key Access per user, so WebCal can be also used from Google Calendar. (Please see above in the "Define Direct URL Key Access" section.)
To subscribe to a WebCal on Google Calendar this needs to be configured and working:
Have a static public IP. Even better, have your public static IP configured with your domain name.
On your internet gateway/router, you must have opened the "Http Port" and forwarded it to the machine hosting the fw Server app.
You need to use in fw Client > Toolbox > Settings >
- Right-mouse click on the ICS icon to the left of the icon Object, View, or Project you wish to subscribe to and use “Copy Link Address” (depending on the web browser you use, this might be called differently). Note that Users/ Resources will only get listed those Objects and/ or Projects that have been enabled in their Web Permission Profiles.
- Go to your Google Calendar and create a new calendar by clicking on the arrow to the right of the “Other calendars” section and selecting “Add by URL”. Next, paste the copied link.
In the example below, three calendars have been created.
Important Note: If the web client has been secured you will need to update the URL for the calendar from webcal:// to https:// or else the calendar will populate without any events.
Subscribing to a WebCal on Apple Calendar
To subscribe to a WebCal on Apple Calendar:
- Right-mouse click on the ICS icon to the left of the icon Object, View, or Project you wish to subscribe to and use “Copy Link Address” (depending on the web browser you use, this might be called differently). Note that Users/Resources will only get listed those Objects and/or Projects that have been enabled in their Web Permission Profiles:
- Go to your Apple Calendar app and create a new calendar by clicking on file > New Calendar Subscription...
- Paste the link into the “Enter The URL of the calendar you want to subscribe to”, and change the “webcal” in the beginning of the link to: http
- Adjust the settings to your needs. Make sure that the location is set to iCloud and that the “Auto Refresh” is set to at least every day.
Important Note: If the web client has been secured you will need to update the URL for the calendar from webcal:// to https:// or else the calendar will populate without any events.
Subscribing to a WebCal on Apple devices: iPhone, iPad, iPod Touch
To subscribe:
- Click on the ICS icon to the left of the Object, Project, or View you wish to subscribe to, or on the name itself. Note that Users/Resources will only get listed those Objects and/or Projects that have been enabled in their Web Permission Profiles:
- Follow the instructions in the following pop-up windows.
- Once the selected WebCals are added to the User/Resource’s 3rd party Calendar application, they will be able to manage them according to the available options in that application: display day or a whole week, rename a Calendar, hide it, delete it, etc.
Important Note: If the web client has been secured you will need to update the URL for the calendar from webcal:// to https:// or else the calendar will populate without any events.
Enabling and configuring WebCal for your Clients
It is very important to set some restrictions on the Web Permission Profile assigned to your Clients if all you need is that they can only subscribe to events from Projects they are involved in.
First of all, in WIFE Client > Toolbox > Contacts > open the Client Contact, open the Web Profile Manager and create a new Profile: Client Access.
In the now open Web Profile Manager window, right mouse click in the grey area in the top left pane to choose: New Profile.
Select the following settings and leave the rest un-ticked or set to NO:
- Allowed Access Tiers > WebCal
- Allowed Access Tiers > Web Access (needed to activate user and password)
- Events > Objects > All Objects > Can View
- Events > Show Events > If He Has A Relation To Its Project > Yes
- Projects > Show > Projects That He Has A Relation To
- Contacts > Events > Allow Showing Events Related To Contact => can see only his Projects
- Contacts > Events > Allow Showing Events Related To Company => can see any Bookings for Projects whose contacts belong to same Company/ Client
Once done, click OK to close the Web Profile Manager window and in the Modify Contact window, enable the Web Access and make sure that your Client has a valid email address. Also, your user has to have a valid email address set, for the invitation to work.
If this person is to subscribe to WebCal on a Google Calendar, then you also need to define a URL key access.
Your Client will receive an automatic email and will be prompted to set a password (this is necessary to be able to subscribe to WebCal).
It is not recommended that you send the WebCal Index page link directly to your Client, as the link will also contain all Objects listed in the index. Then follow these steps:
- In your own Web Profile, add the option Projects > Show > All Projects
- Open your own WebCal index
- Right-click on the Project that you wish your Client to get subscribed to > select Properties > copy the URL Address
- Send this link by email to your client, and explain that he will first need to go through the first automatic email invitation to set a password.
- Once he has set up his farmerswife password, he will be able to click on the link you sent him and use his farmerswife user credentials (his/her used email address + the set password) to subscribe to this Project calendar – if subscribing on iCal, Outlook, iPhone… If subscribing on Google Calendar, then he needs to follow the same steps explained further up for users and resources.