Skip to content

Commit

Permalink
Merge pull request #162 from zoufou/v0.6-beta
Browse files Browse the repository at this point in the history
v0.6b17 doc update
  • Loading branch information
farirat committed May 22, 2015
2 parents 744635d + b69e19f commit e50fba5
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 58 deletions.
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ python:
# Command to install dependencies
install:
- python setup.py sdist
- sudo pip install dist/jasmin-0.6b17.tar.gz
- sudo pip install dist/jasmin-0.6b18.tar.gz
# Commands to run tests:
script:
# Add jasmind to system autostartup:
Expand Down
2 changes: 1 addition & 1 deletion jasmin/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

MAJOR = 0
MINOR = 6
PATCH = 17
PATCH = 18
META = 'b'

def get_version():
Expand Down
Original file line number Diff line number Diff line change
@@ -1,59 +1,12 @@
##########################
Frequently Asked Questions
##########################
#############
Developer FAQ
#############

.. _faq_for_users:

For users
*********

.. _faq_1_Cnfavtstrj:

Could not find a version that satisfies the requirement jasmin
==============================================================

Installing Jasmin using **pip** will through this error::

$ sudo pip install jasmin
[sudo] password for richard:
Downloading/unpacking jasmin
Could not find a version that satisfies the requirement jasmin (from versions: 0.6b1, 0.6b10, 0.6b11, 0.6b12, 0.6b13, 0.6b14, 0.6b2, 0.6b3, 0.6b4, 0.6b5, 0.6b6, 0.6b7, 0.6b8, 0.6b9)
Cleaning up...
No distributions matching the version for jasmin
Storing debug log for failure in /home/richard/.pip/pip.log

This is common question, since Jasmin is still tagged as a 'Beta' version, pip installation must be done with the **--pre** parameter::

$ sudo pip install --pre jasmin
...

.. hint::
This is clearly documented in :ref:`installation_linux_steps` installation steps.

.. _faq_1_CcttcasJ:

Cannot connect to telnet console after starting Jasmin
======================================================

According to the installation guide, Jasmin requires running RabbitMQ and Redis servers, when starting it will wait for these servers to go up.

If you already have these requirements, please check jcli and redis-client logs:

* /var/log/jasmin/redis-client.log
* /var/log/jasmin/jcli.log

.. hint::
Please check :ref:`installation_prerequisites` before installing.

.. _faq_for_developers:

For developers
**************

.. _faq_2_Htlmiatpd:

How to 'log' messages in a third party database ?
=================================================
*************************************************

Jasmin runs without a database, everything is in-memory and messages are exchanged through AMQP broker (RabbitMQ), if you need to get these messages you have to consume from the right queues as described in :doc:`/messaging/index`.

Expand Down Expand Up @@ -85,7 +38,7 @@ Thanks to Pedro_'s contribution::
.. _faq_2_HtdatPBA:

How to directly access the Perspective Broker API ?
===================================================
***************************************************

Management tasks can be done directly when accessing PerspectiveBroker_ API, it will be possible to:

Expand All @@ -107,7 +60,7 @@ Here's an example:
.. _faq_2_CypaeohtuE:

Can you provide an example of how to use EvalPyFilter ?
=======================================================
*******************************************************

Let's say you need your filter to pass only messages from username **foo**::

Expand Down Expand Up @@ -135,7 +88,7 @@ Now let's make an advanced example, the below filter will:
.. _faq_2_HtsaEfaMR:

How to set an EvalPyFilter for a MT Route ?
===========================================
*******************************************

I have written my *EvalPyFilter*, how can i use it to filter MT messages ?

Expand Down
58 changes: 58 additions & 0 deletions misc/doc/sources/faq/users.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
########
User FAQ
########

.. _faq_1_Cnfavtstrj:

Could not find a version that satisfies the requirement jasmin
**************************************************************

Installing Jasmin using **pip** will through this error::

$ sudo pip install jasmin
[sudo] password for richard:
Downloading/unpacking jasmin
Could not find a version that satisfies the requirement jasmin (from versions: 0.6b1, 0.6b10, 0.6b11, 0.6b12, 0.6b13, 0.6b14, 0.6b2, 0.6b3, 0.6b4, 0.6b5, 0.6b6, 0.6b7, 0.6b8, 0.6b9)
Cleaning up...
No distributions matching the version for jasmin
Storing debug log for failure in /home/richard/.pip/pip.log

This is common question, since Jasmin is still tagged as a 'Beta' version, pip installation must be done with the **--pre** parameter::

$ sudo pip install --pre jasmin
...

.. hint::
This is clearly documented in :ref:`installation_linux_steps` installation steps.

.. _faq_1_CcttcasJ:

Cannot connect to telnet console after starting Jasmin
******************************************************

According to the installation guide, Jasmin requires running RabbitMQ and Redis servers, when starting it will wait for these servers to go up.

If you already have these requirements, please check jcli and redis-client logs:

* /var/log/jasmin/redis-client.log
* /var/log/jasmin/jcli.log

.. hint::
Please check :ref:`installation_prerequisites` before installing.

.. _faq_1_SiemSSHAttpifru:

Should i expose my SMPP Server & HTTP API to the public internet for remote users ?
***********************************************************************************

As a security best practice, place *Jasmin* instance(s) behind a firewall and apply whitelisting rules to only accept users you already know, a better solution is to get VPN tunnels with your users.

If for some reasons you cannot consider these practices, here's a simple iptables configuration that can help to prevent Denial-of-service attacks::

iptables -I INPUT -p tcp --dport 2775 -m state --state NEW -m recent --set --name SMPP_CONNECT
iptables -N RULE_SMPP
iptables -I INPUT -p tcp --dport 2775 -m state --state NEW -m recent --update --seconds 60 --hitcount 3 --name SMPP_CONNECT -j RULE_SMPP
iptables -A RULE_SMPP -j LOG --log-prefix 'DROPPED SMPP CONNECT ' --log-level 7
iptables -A RULE_SMPP -j DROP

This will drop any SMPP Connection request coming from the same source IP with more than 3 times per minute ...
5 changes: 3 additions & 2 deletions misc/doc/sources/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ Getting started
* :doc:`/apis/ja-http/index` -- HTTP API technical specification
* :doc:`/apis/smpp-server/index` -- SMPP Server API technical specification
* :ref:`Examples_Routing` -- Running basic SMS and routing scenarios
* :doc:`/faq/index` -- Frequently asked questions
* :doc:`/faq/users` -- Frequently asked questions

Full contents
*************
Expand All @@ -54,7 +54,8 @@ Full contents
/routing/index
/billing/index
/messaging/index
/faq/index
/faq/users
/faq/developers

Links
*****
Expand Down

0 comments on commit e50fba5

Please sign in to comment.