Entersoft Framework 2020-Collaboration

Από

Entersoft Business Suite® | Entersoft Expert® | Entersoft CRM® | Entersoft WMS®

Collaboration | Chat

Ταυτότητα

Έκδοση λογισμικού Entersoft Framework 2020 | Compatible versions: >=5.0.6.0

Τελ. ενημέρωση 30/09/2021

Copyright

© Copyright 2021 Entersoft A.E. Με την επιφύλαξη όλων των νόμιμων δικαιωμάτων.

Δεν επιτρέπεται η αναδημοσίευση ή μετάδοση, με οποιαδήποτε μορφή και για οποιοδήποτε λόγο, μέρους ή όλου του παρόντος εγχειριδίου, χωρίς τη ρητή άδεια της Entersoft Α.Ε. Όσον αφορά το περιεχόμενο του παρόντος…

  • Μπορεί να μεταβληθεί οποιαδήποτε στιγμή.
  • Εξυπηρετεί αποκλειστικά πληροφοριακούς σκοπούς.
  • Δεν παρέχεται εγγύηση για την ύπαρξη τυχόν λαθών ή για τη λανθασμένη χρήση ή για μη επιθυμητά αποτελέσματα από τη χρήση των προτεινόμενων στο παρόν διαδικασιών.

= Οδηγίες Εγκατάστασης Docker

Για Windows 10

Η τελευταία έκδοση του Docker απαιτεί:

  • Windows 10 64-bit έκδοση 1903 ή μεταγενέστερη
  • Τουλάχιστον 4GB RAM στον host
  • Εγκατεστημένο το WSL2 (Windows Subsystem for Linux)
  • Να είναι ενεργοποιημένο το αντίστοιχο Virtualization Technology στο BIOS  (Intel VT-x και AMD-V αντίστοιχα ανάλογα τη CPU)

Για να ελέγξετε αν το virtualization είναι ενεργοποιημένο, ανοίξτε τον Task Manager στο tab Performance -> CPU και ελέγξτε το Virtualization:

cid:image010.jpg@01D70067.EA5B4340

Συστήνεται να μην είναι εγκατεστημένο το VirtualBox στον host.

Εγκατάσταση του Windows Subsystem για Linux (WSL2)

Ακολουθήστε τα βήματα εγκατάστασης 1 έως και 5 όπως αναγράφονται στο https://docs.microsoft.com/en-us/windows/wsl/install-win10#step-2---check-requirements-for-running-wsl-2.

Εγκατάσταση του Docker Desktop για Windows 10

Κατεβάστε τον τελευταίο Docker Desktop για Windows από το https://hub.docker.com/editions/community/docker-ce-desktop-windows/ και ακολουθείστε τις οδηγίες εγκατάστασης που αναγράφονται στη σελίδα.

Login ως Entersoft Consultant στο repository της Entersoft

Κάντε δεξί κλικ στο εικονίδιο του Docker που υπάρχει στη notification bar και επιλέξτε Sign-in. Χρησιμοποιείστε τα παρακάτω credentials:

Docker ID: entersoftcons | Password: ***********[1]

Για Windows Server 2019

Σε ένα elevated PowerShell εκτελούμε τα παρακάτω βήματα:

  1. Απεγκατάσταση προηγούμενης έκδοσης του Docker:
    • Uninstall-Package -Name docker -ProviderName DockerMSFTProvider
  2. Reboot
  3. A. Αν είναι φυσικό μηχάνημα τότε επιβεβαιώστε ότι το Hyper-V είναι εγκατεστημένο.
    • Αν δεν είναι εγκατεστημένο:
      • Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart
      • Reboot

Β. Αν πρόκειται για VM απαιτείται η παρακάτω εντολή στο φυσικό μηχάνημα για την ενεργοποίηση του nested virtualization (https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/user-guide/nested-virtualization):

  • Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true

    * Δεν είναι απαραίτητο να εγκατασταθεί ο Hyper-V ρόλος.

  1. Εγκατάσταση της preview έκδοσης του Docker:

    • Install-Module DockerProvider

    • Install-Package Docker -ProviderName DockerProvider -RequiredVersion preview

  2. Reboot

  3. Η εγκατάσταση μέχρι αυτό το σημείο δίνει τη δυνατότητα να τρέξουμε μόνο Windows Containers.

  4. Διαμόρφωση του Docker έτσι ώστε να μπορεί να τρέχει Linux Containers (όλα τα es images είναι linux) – switch to linux containers:

    • [Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine")

    • Restart-Service docker

Επιπλέον χρειαζόμαστε το Compose tool, για το οποίο απαιτείται επιπλέον εγκατάσταση.

Σε ένα elevated PowerShell εκτελούμε τα παρακάτω βήματα:

Login ως Entersoft Consultant στο repository της Entersoft

Σε ένα PowerShell εκτελούμε την εντολή `docker login` όπου δίνουμε τα παρακάτω credentials:

Docker ID: entersoftcons | Password: ***********[2]

Οδηγίες εγκατάστασης Openfire σε Docker

Προετοιμασία Βάσης Δεδομένων

Το openfire docker image που παρέχεται έχει ρυθμιστεί ώστε να χρησιμοποιεί MS SQL βάση δεδομένων για τη λειτουργία του openfire server. Μπορείτε κάλλιστα να χρησιμοποιήσετε κάποια άλλη Β.Δ. όπως πχ MySQL, Oracle, PostgreSQL. Αυτό μπορεί να γίνει μόνο μέσα από το administration console του Openfire ή αν καταφύγετε σε manual installation του Openfire server. Προτείνουμε να δημιουργήσετε μία νέα κενή Β.Δ. στο SQL Server σας ώστε να έχετε τη δυνατότητα δημιουργίας και χρήσης διαφορετικών backup plans, αποθηκευτικών μέσων κλπ. Στην αντίθετη περίπτωση, μπορείτε να χρησιμοποιήσετε την ίδια transactional Β.Δ. που χρησιμοποιεί το EBS. Κατά την εκκίνηση του Openfire server θα γίνει αυτόματα ο έλεγχος και η ενημέρωση του σχήματος της Β.Δ.

Βασική προϋπόθεση για την επικοινωνία με τον SQL Server είναι η ενεργοποίηση της επικοινωνίας μέσω σταθερής θύρας TCP/IP. Αυτό δηλώνεται μέσα από SQL Server Configuration Manager όπως περιγράφεται παρακάτω:

  1. Ανοίξτε τον SQL Server Configuration Manager πατώντας Start και γράφοντας:

    1. SQLServerManager11.msc για SQL Server 2012

    2. SQLServerManager12.msc για SQL Server 2014

    3. SQLServerManager13.msc για SQL Server 2016

    4. SQLServerManager14.msc για SQL Server 2017

    5. SQLServerManager15.msc για SQL Server 2019

  2. Επιλέξτε SQL Server Network Configuration -> Protocols for {INSTANCE} -> TCP/IP

    1. Στο tab Protocol σιγουρευτείτε ότι Enabled = Yes

    2. Στο tab IP Addresses σιγουρευτείτε ότι:

      1. Το TCP Dynamic Ports είναι κενό

      2. Το TCP Port έχει τη σταθερή θύρα που επιθυμείτε (προκαθορισμένη είναι η 1433).

    3. Αν έχετε περισσότερες της μία διεύθυνσης, φροντίστε οι αλλαγές να γίνουν στην κατηγορία IPAll

  3. Επιλέξτε SQL Server Services

    1. κάντε δεξί κλικ στο SQL Server instance και Restart.

    2. Σιγουρευτείτε ότι το server είναι σε state = running.

Δημιουργία του container

Δημιουργήστε αρχείο: docker-compose.yml με τις πληροφορίες που χρειάζεται ο docker ώστε να συνθέσει και να ξεκινήσει τον Openfire server container.

version: "3.9"

volumes:

esopenfire-data-volume:

name: esopenfire-data-volume

services:

esopenfire:

container_name: "esopenfire-server"

image: entersoftsa/esopenfire:latest

# networks: # remove comments to enable for double NAT (VM use-case)

# - esnetwork

restart: always # always restart the container if it stops

ports: # Port number mapping: <hostPort>:<containerPort> - we can edit only the left-hand side referring to the Docker host port

- "5222-5223:5222-5223" # client to server

- "7070:7070" # http binding (unsecured)

- "7443:7443" # http binding (secured)

- "5269-5270:5269-5270" # server to server

- "5275-5276:5275-5276" # external components

- "5262-5263:5262-5263" # connection manager

- "9090-9091:9090-9091" # admin console

- "7777:7777" # file transfer proxy

- "5229:5229" # flash cross domain

environment:

- ODBC_CONN_STRING=jdbc:jtds:sqlserver://host.docker.internal:1433/ESCollaboration;appName=esopenfire-server # connection string for MS SQL server

- FQDN=yourpc.yourdomain # server host name (full qualified domain name)

volumes:

- esopenfire-data-volume:/etc/openfire # <hostVolumeName>:<containerPathWhereDirectoryIsMounted>

# networks: # remove comments to enable for double NAT (VM use-case)

# esnetwork:

# external:

# name: nat

Αποθηκεύστε το αρχείο κάπου τοπικά και ανοίξτε το με ένα notepad:

  1. Μπορείτε να αλλάξετε τις προκαθορισμένες θύρες στην περίπτωση χρησιμοποιούνται ήδη από άλλο service.

    1. Τα mappings είναι τις μορφής {host port/range}:{container port/range}. Επομένως αλλάζετε μόνο το host (αριστερό) μέρος του mapping.

    2. Σιγουρευτείτε ότι οι θύρες αυτές είναι ανοιχτές στο firewall και επιτρέπεται η επικοινωνία.

  2. Υποχρεωτικά πρέπει να ορίσετε το δικό σας ODBC_CONN_STRING που αφορά το connection string για την επικοινωνία με τον sql server.

    1. Εάν δεν υπάρχει named instance, η default σύνταξη είναι:

      ODBC_CONN_STRING=jdbc:jtds:sqlserver://{host}:{port}/{databaseName};appName=esopenfire-server

    2. Εάν υπάρχει named instance, η σύνταξη είναι:

      ODBC_CONN_STRING=jdbc:jtds:sqlserver://{host}:{port}/{databaseName};instance={instanceName};user=sa;password=******;appName=esopenfire-server

    3. Εάν ο SQL Server βρίσκεται στον ίδιο host, τότε o host είναι ο host.docker.internal (εναλλακτικά μπορείτε να δηλώσετε την IP address). Στην αντίθετη περίπτωση, θα πρέπει να δηλώσετε την IP address ή το FQDN του host π.χ. yourserver.yourdomain

    4. Η προκαθορισμένη θύρα του default SQL Server instance είναι η 1433. Εάν ο docker βρίσκεται σε άλλον host, σιγουρευτείτε ότι η θύρα αυτή είναι ανοιχτή στο firewall.

    5. Το όνομα της Β.Δ. είναι αυτό που δηλώσατε στο προηγούμενο βήμα.

  3. Δηλώστε το FQDN (Full Qualified Domain Name) του server, π.χ. yourserver.yourdomain

  4. Εάν πρόκειται για VM, αφαιρέστε το σχολιασμό από τις γραμμές που έχουν να κάνουν με τα networks (double NAT).

  5. Αποθηκεύστε το αρχείο.

Για να δημιουργηθεί ο container:

  1. Ανοίξτε μία κονσόλα ή ένα powershell στο ίδιο directory που βρίσκεται το docker-compose.yml

  2. Δώστε την εντολή docker-compose up -d

    1. O docker θα συνδεθεί στο repository της Entersoft και θα κατεβάσει την τελευταία εικόνα (esopenfire:latest)

    2. Θα δημιουργηθεί ο νέος container και θα ξεκινήσει στο background

    3. Επιβεβαιώστε ότι ο container τρέχει με επιτυχία στο μηχάνημα μέσω της εντολής ‘docker ps’ σε μία κονσόλα (https://docs.docker.com/engine/reference/commandline/ps/). Σε περίπτωση επιτυχίας θα πρέπει να δείτε πληροφορίες όπως το CONTAINER ID. Σε περίπτωση που δε λάβετε ανάλογο μήνυμα, δοκιμάστε να τρέξετε την εντολή ‘docker-compose up’ έτσι ώστε να δείτε στην κονσόλα περισσότερες πληροφορίες γύρω από την αιτία του σφάλματος.

Τόσο ο container όσο και το image είναι πλέον ορατά στο UI του docker.

Για την περίπτωση των Windows 10, μπορείτε να σταματάτε και ξεκινάτε τον container απευθείας από το Docker Desktop. Για την περίπτωση του Windows Server 2019 μπορείτε να σταματάτε τον container με την εντολή `docker-compose down` μέσα από μία κονσόλα ή ένα powershell στο ίδιο directory που βρίσκεται το docker-compose.yml.

Σύνδεση στο Openfire Administration Console

  1. Ανοίξτε έναν browser και πλοηγηθείτε στο http://{fqdn}:9090 ή στο https://{fqfn}:9091

  2. Βάλτε username: admin και password: admin για να μπείτε στον openfire.

  3. Θα πρέπει να κάντε manually τα παρακάτω βήματα:

    1. Δήλωση XMPP domain name

      1. Πηγαίνετε στο Server -> Server Manager -> System Properties

      2. Στο κουτάκι “Property Name” γράψτε “domain” και πατήστε enter.

      3. Θα σας εμφανίσει το property xmpp.domain.

      4. Πατήστε το εικονίδια edit που βρίσκεται στην ίδια γραμμή

      5. Στο κουτάκι “Property Value” ορίστε το domain name που χρησιμοποιήσατε για να συνθέσετε το FQDN πχ es.entersoft.gr

      6. Πατήστε Save Property

      7. Kάντε restart τον container

      8. Κάντε refresh τον browser και login πάλι

    2. Ενεργοποίηση του REST API

      1. Πηγαίνετε στο Server -> Server Settings -> REST API

      2. Επιλέξτε “Enabled - REST API requests will be processed.”

      3. Πατήστε Save Settings.

    3. Δήλωση administrator password

      1. Πηγαίνετε στο User/Groups -> User -> User Summary -> admin -> password

Entersoft Framework 2020-Collaboration-image2.png

Entersoft Framework 2020-Collaboration-image3.png

Παραμετροποίηση του Openfire server μέσω EBS

Δήλωση ομάδων συνεργασίας

Ως ομάδες συνεργασίας ορίζονται οι ομάδες χρηστών που θα ανοιχτούν ως user groups στον openfire server. Κατά τον συγχρονισμό των χρηστών με τον openfire, οι εταιρείες τους ανοίγονται αυτόματα ως user groups.

Μπορείτε να δηλώσετε τις ομάδες συνεργασίας στην Παραμετροποίηση > Γενικά > Ομάδες χρηστών

cid:image001.jpg@01D70007.B936DAF0

Συγχρονισμός χρηστών και ομάδων

Ο συγχρονισμός γίνεται μέσω του Openfire Console που ανοίγει με το σχετικό button στο profile επικοινωνίας χρηστών. Πηγαίνετε στην Παραμετροποίηση > Γενικά > Προφίλ επικοινωνίας και δημιουργήστε / ανοίξτε το προφίλ που σας ενδιαφέρει. Επιλέξτε:

Entersoft Framework 2020-Collaboration-image5.png

Στον login διάλογο βάλτε τα στοιχεία σας και κάντε login στον Openfire Server. Μπορείτε να επιλέξετε να αποθηκευτούν τα στοιχεία σύνδεσης.

cid:image003.jpg@01D70007.B936DAF0

Το 1ο βήμα είναι να συγχρονίσετε τους χρήστες του EBS με αυτούς του Openfire Server πατώντας το κουμπί “Συγχρονισμός χρηστών ”. Στον διάλογο βλέπετε:

  • Χρήστες που υπάρχουν στο EBS αλλά όχι στον Openfire Server (δημιουργία)
  • Χρήστες που υπάρχουν στον Openfire Server αλλά όχι στο EBS (διαγραφή)
  • Χρήστες που υπάρχουν τόσο στον Openfire Server όσο και στο EBS αλλά τα στοιχεία τους δεν συμφωνούν (ενημέρωση)
  • Είναι επίσης ορατό το σε ποιων χρηστών το προφίλ επικοινωνίας έχει επιλεχθεί να είναι διαθέσιμο το chat.

Επιλέγετε τους χρήστες που θέλετε και πατάτε ΟΚ.

Entersoft Framework 2020-Collaboration-image7.png

Θα εμφανιστεί μήνυμα ότι η διαδικασία ολοκληρώθηκε επιτυχώς και η λίστα των χρηστών θα ενημερωθεί. Μπορείτε να επιλέξετε συγκεκριμένες εγγραφές και να πατήσετε του κουμπί “Διαγραφή” στην toolbar. Οι χρήστες αυτοί θα διαγραφούν από τον Openfire server.

To κουμπί “Εμφάνιση” ανοίγει τη φόρμα των χρηστών.

cid:image007.jpg@01D70007.B936DAF0

Το επόμενο βήμα είναι ο συγχρονισμός των ομάδων. Ο συγχρονισμός των ομάδων αφορά:

  • Τον συγχρονισμό των εταιρειών του EBS ως Openfire User Groups
  • Τον συγχρονισμό των ομάδων συνεργασίας του EBS ως Openfire User Groups
  • Την προσθαφαίρεση των χρηστών του EBS στις αντίστοιχες ομάδες του Openfire

Πατώντας το κουμπί “Συγχρονισμός ομάδων” εμφανίζεται αντίστοιχος διάλογος με αυτόν των χρηστών. Ο διάλογος αυτό είναι οργανωμένος σε 2 επίπεδα:

  • Το 1ο επίπεδο εμφανίζει τις ομάδες οι οποίες θα συγχρονιστούν με τον Openfire server.
  • Σε 2ο επίπεδο εμφανίζονται οι χρήστες της κάθε ομάδας που θα συγχρονιστούν με τον Openfire Server.

Θα πρέπει λοιπόν να επιλέξετε τόσο τις ομάδες που θέλετε να συγχρονιστούν καθώς και τους χρήστες αυτών.

cid:image008.jpg@01D70007.B936DAF0

Πατήστε “ΟΚ” για να ξεκινήσει η διαδικασία. Θα εμφανιστεί μήνυμα ότι η διαδικασία ολοκληρώθηκε επιτυχώς και η λίστα των χρηστών θα ενημερωθεί.

Πατώντας το κουμπί “Διαγραφή” στην toolbar μπορείτε manually Να διαγράψετε τις επιλεγμένες ομάδες ή να αφαιρέσετε τους επιλεγμένους χρήστες από τις ομάδες του.

Με το κουμπί “Παραμετροποίηση” μπορείτε να ανοίξετε την ομάδα χρηστών ώστε να διαχειριστείτε τις ομάδες συνεργασίας.

cid:image012.jpg@01D70007.B936DAF0

Ρύθμιση προφίλ επικοινωνίας

Τελευταίο βήμα είναι η δήλωση των στοιχείων του Openfire server στο προφίλ επικοινωνίας.

Πηγαίνετε στην Παραμετροποίηση > Γενικά > Προφίλ επικοινωνίας και δημιουργήστε / ανοίξτε το προφίλ που σας ενδιαφέρει.

Στο tab “Ρυθμίσεις chat”  δηλώνετε τα στοιχεία σύνδεσης του Openfire server και ενεργοποιείτε την υπηρεσία:

Entersoft Framework 2020-Collaboration-image11.png

Αποθηκεύετε και κάνετε restart το EBS καθώς και τον Application Server. Μετά το login, το κουμπί “Συνομιλίες” θα εμφανιστεί στην action bar του EBS.

  1. Επικοινωνήστε με το Entersoft Support στο: support@entersoft.gr
  2. Επικοινωνήστε με το Entersoft Support στο: support@entersoft.gr


PDF Version