Send Motion-user mailing list submissions to
        motion-user@lists.sourceforge.net

To subscribe or unsubscribe via the World Wide Web, visit
        https://lists.sourceforge.net/lists/listinfo/motion-user
or, via email, send a message with subject or body 'help' to
        motion-user-requ...@lists.sourceforge.net

You can reach the person managing the list at
        motion-user-ow...@lists.sourceforge.net

When replying, please edit your Subject line so it is more specific
than "Re: Contents of Motion-user digest..."


Today's Topics:

   1. Re: Duplicate SQL entries for every event (David Powell)


----------------------------------------------------------------------

Message: 1
Date: Sat, 28 Aug 2021 12:46:34 -0400
From: David Powell <da...@depowell.com>
To: tosiara <tosi...@gmail.com>
Cc: Motion discussion list <motion-user@lists.sourceforge.net>
Subject: Re: [Motion-user] Duplicate SQL entries for every event
Message-ID: <add05fb1-d867-86ed-bb68-a35ad7016...@depowell.com>
Content-Type: text/plain; charset="utf-8"; Format="flowed"

Done.? Log is at 
https://www.dropbox.com/s/zwde53qtywnlb72/motion.log?dl=0 
<https://www.dropbox.com/s/zwde53qtywnlb72/motion.log?dl=0>

David


On 8/28/21 5:18 AM, tosiara wrote:
> Could you make the full log with -d 9, but without specifying DBL now? 
> Let it log everything and upload the raw log pastebin or somewhere
>
> On Sat, Aug 28, 2021, 02:29 David Powell <da...@depowell.com 
> <mailto:da...@depowell.com>> wrote:
>
>     Hi Tosiara.
>
>     There's only one query in my configuration, so I'm not sure how it
>     can be run more than once with the same event number.? Did your
>     testing include 7 cameras like my setup?? Maybe that has something
>     to do with it.
>
>     I don't really want to change and recompile the Motion code right
>     now, because it's running on a server that is 650 miles away, and
>     I don't want to take a chance on messing something up. I can do it
>     in a month or so when I'm back local to the server.
>
>     I did start it in debug mode (/sudo -u motion //motion -n -d 9 -k
>     DBL/) for a bit, however, and the resulting log is below:
>
>     [0:motion] [NTC] [ALL] [Aug 27 16:23:27] motion_startup: Motion
>     4.3.1+git20210613-11320aa Started
>     [0:motion] [NTC] [ALL] [Aug 27 16:23:27] motion_startup: Using log
>     type (DBL) log level (ALL)
>     [0:motion] [DBG] [DBL] [Aug 27 16:23:27] motion_ntc: mysql? :
>     available
>     [0:motion] [DBG] [DBL] [Aug 27 16:23:27] motion_ntc: MariaDB: not
>     available
>     [0:motion] [DBG] [DBL] [Aug 27 16:23:27] motion_ntc: sqlite3: not
>     available
>     [0:motion] [DBG] [DBL] [Aug 27 16:23:27] motion_ntc: pgsql? : not
>     available
>     [0:motion] [DBG] [DBL] [Aug 27 16:23:27] motion_ntc: nls??? :
>     available
>     [0:motion] [DBG] [DBL] [Aug 27 16:23:27] dbse_global_init:
>     Initializing database
>     [1:ml1:patio] [NTC] [DBL] [Aug 27 16:23:29] dbse_init: Database
>     backend mysql
>     [2:ml2:shop] [NTC] [DBL] [Aug 27 16:23:29] dbse_init: Database
>     backend mysql
>     [3:ml3:pumphouse] [NTC] [DBL] [Aug 27 16:23:30] dbse_init:
>     Database backend mysql
>     [7:ml7:gate] [NTC] [DBL] [Aug 27 16:23:30] dbse_init: Database
>     backend mysql
>     [6:ml6:shed] [NTC] [DBL] [Aug 27 16:23:44] dbse_init: Database
>     backend mysql
>     [4:ml4:backyard] [NTC] [DBL] [Aug 27 16:23:44] dbse_init: Database
>     backend mysql
>     [1:ml1:patio] [WRN] [DBL] [Aug 27 16:23:47] dbse_firstmotion:
>     Ignoring empty sql query
>     [1:ml1:patio] [WRN] [DBL] [Aug 27 16:23:47] dbse_newfile: Ignoring
>     empty sql query
>     [5:ml5:pumpYard] [NTC] [DBL] [Aug 27 16:23:47] dbse_init: Database
>     backend mysql
>     [1:ml1:patio] [DBG] [DBL] [Aug 27 16:24:47] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 16:40:16] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 16:40:16] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 16:41:16] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 16:51:11] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 16:51:11] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 16:53:04] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 16:54:55] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 16:54:55] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 16:56:26] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:00:04] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:00:04] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:01:06] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:05:07] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:05:07] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:06:09] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:06:55] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:06:55] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:07:56] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:08:17] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:08:17] dbse_newfile: Ignoring
>     empty sql query
>     [1:ml1:patio] [WRN] [DBL] [Aug 27 17:08:50] dbse_firstmotion:
>     Ignoring empty sql query
>     [1:ml1:patio] [WRN] [DBL] [Aug 27 17:08:50] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:09:18] dbse_exec_mysql:
>     Executing MySQL query
>     [1:ml1:patio] [DBG] [DBL] [Aug 27 17:09:51] dbse_exec_mysql:
>     Executing MySQL query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:13:09] dbse_firstmotion:
>     Ignoring empty sql query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:13:09] dbse_newfile: Ignoring
>     empty sql query
>     [1:ml1:patio] [WRN] [DBL] [Aug 27 17:13:55] dbse_firstmotion:
>     Ignoring empty sql query
>     [1:ml1:patio] [WRN] [DBL] [Aug 27 17:13:55] dbse_newfile: Ignoring
>     empty sql query
>     [6:ml6:shed] [DBG] [DBL] [Aug 27 17:14:10] dbse_exec_mysql:
>     Executing MySQL query
>     [1:ml1:patio] [DBG] [DBL] [Aug 27 17:14:57] dbse_exec_mysql:
>     Executing MySQL query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:15:43] dbse_firstmotion:
>     Ignoring empty sql query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:15:43] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:16:35] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:16:35] dbse_newfile: Ignoring
>     empty sql query
>     [6:ml6:shed] [DBG] [DBL] [Aug 27 17:16:44] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:18:11] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:18:36] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:18:36] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:19:37] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:27:29] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:27:29] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:28:31] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:32:11] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:32:11] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:33:59] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:40:08] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:40:08] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:41:09] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:42:31] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:42:31] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:44:30] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:44:30] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:45:11] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [ERR] [DBL] [Aug 27 17:45:11] dbse_exec_mysql: MySQL
>     query failed Duplicate entry '1-7-13-2021-08-27 17:42:31' for key
>     'events.PRIMARY' error code 1062: Connection timed out
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:47:48] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:47:48] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:48:49] dbse_exec_mysql:
>     Executing MySQL query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:48:54] dbse_firstmotion:
>     Ignoring empty sql query
>     [7:ml7:gate] [WRN] [DBL] [Aug 27 17:48:54] dbse_newfile: Ignoring
>     empty sql query
>     [7:ml7:gate] [DBG] [DBL] [Aug 27 17:49:55] dbse_exec_mysql:
>     Executing MySQL query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:57:26] dbse_firstmotion:
>     Ignoring empty sql query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:57:26] dbse_newfile: Ignoring
>     empty sql query
>     [6:ml6:shed] [DBG] [DBL] [Aug 27 17:58:27] dbse_exec_mysql:
>     Executing MySQL query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:59:28] dbse_firstmotion:
>     Ignoring empty sql query
>     [6:ml6:shed] [WRN] [DBL] [Aug 27 17:59:28] dbse_newfile: Ignoring
>     empty sql query
>     [6:ml6:shed] [DBG] [DBL] [Aug 27 18:00:28] dbse_exec_mysql:
>     Executing MySQL query
>
>     You can see the duplicate entry error about 12 lines from the
>     bottom of the log.? There also seems to be a lot of "Ignoring
>     empty sql query" lines.? Not sure if that's normal or not.
>
>     HTH, David
>
>
>     On 8/27/21 6:55 AM, tosiara wrote:
>>     I was only able to reproduce the issue if:
>>
>>     1. sql_log_movie on and both sql_query_stop and sql_query are set
>>     to the same query
>>     2. when only sql_query defined and sql_log_picture on and
>>     sql_log_movie on
>>
>>     The cause is the design of your query. It contains event's data
>>     that does not change across the event, so if you are running
>>     multiple sql queries you will get that primary key conflict, as
>>     you are effectively inserting the same data multiple times.
>>
>>     You can change the code to dump the query:
>>
>>     diff --git a/src/dbse.c b/src/dbse.c
>>     index e64896e..c645ae4 100644
>>     --- a/src/dbse.c
>>     +++ b/src/dbse.c
>>     @@ -368,7 +368,7 @@ static void dbse_exec_mysql(char *sqlquery,
>>     struct context *cnt, int save_id)
>>     ?{
>>     ? ? ?#if defined(HAVE_MYSQL)
>>     ? ? ? ? ?if (mystreq(cnt->conf.database_type, "mysql")) {
>>     - ? ? ? ? ? ?MOTION_LOG(DBG, TYPE_DB, NO_ERRNO, _("Executing
>>     mysql query"));
>>     + ? ? ? ? ? ?MOTION_LOG(DBG, TYPE_DB, NO_ERRNO, _("Executing
>>     mysql query %s"), sqlquery);
>>     ? ? ? ? ? ? ?if (mysql_query(cnt->database_mysql, sqlquery) != 0) {
>>     ? ? ? ? ? ? ? ? ?int error_code = mysql_errno(cnt->database_mysql);
>>
>>     And run motion with DBL debug:
>>
>>     motion -c motion-mysql.conf -n -d 9 -k DBL
>>
>>     Then you will see which queries and when motion tries to insert
>>
>>     [1:ml1:patio] [INF] [EVT] event_new_video: Source FPS 10
>>     [1:ml1:patio] [INF] [ENC] ffmpeg_set_quality: libx264 codec
>>     vbr/crf/bit_rate: 28
>>     [1:ml1:patio] [DBG] [DBL] dbse_exec_mysql: Executing mysql query
>>     INSERT INTO events
>>     
>> (server_number,camera_number,event_number,event_date,video_length,filename)
>>     VALUES (1,1,01,{ts
>>     '20210827135336'},null,'./2021-08-27/1-01-20210827135336.mp4');
>>     [1:ml1:patio] [NTC] [EVT] event_newfile: File of type 8 saved to:
>>     ./2021-08-27/1-01-20210827135336.mp4
>>     [1:ml1:patio] [NTC] [ALL] motion_detected: Motion detected -
>>     starting event 1
>>     [1:ml1:patio] [DBG] [DBL] dbse_exec_mysql: Executing mysql query
>>     INSERT INTO events
>>     
>> (server_number,camera_number,event_number,event_date,video_length,filename)
>>     VALUES (1,1,01,{ts
>>     '20210827135336'},null,'./2021-08-27/1-01-20210827135336.jpg');
>>     [1:ml1:patio] [ERR] [DBL] dbse_exec_mysql: Mysql query failed
>>     Duplicate entry '1-1-1-2021-08-27 13:53:36' for key
>>     'events.PRIMARY' error code 1062: Connection timed out
>>     [1:ml1:patio] [NTC] [EVT] event_newfile: File of type 1 saved to:
>>     ./2021-08-27/1-01-20210827135336.jpg
>>
>>     Please send your log with -d 9
>>
>>
>>     On Fri, Aug 27, 2021 at 1:42 PM tosiara <tosi...@gmail.com
>>     <mailto:tosi...@gmail.com>> wrote:
>>
>>         Ah, ok, I see what you mean. You have sent it as a snit
>>         earlier and GMail collapsed that section thinking it was a
>>         quote :D
>>         Thanks, looking into it now
>>
>>
>>         On Fri, Aug 27, 2021 at 1:39 PM David Powell
>>         <da...@depowell.com <mailto:da...@depowell.com>> wrote:
>>
>>             Hi. I'm not sure what you mean,? they're all listed in
>>             the section under "Database and SQL Configuration
>>             parameters".Is there one in particular that you are
>>             looking for?
>>
>>             David
>>
>>             On August 27, 2021 4:29:33 AM tosiara <tosi...@gmail.com
>>             <mailto:tosi...@gmail.com>> wrote:
>>
>>>             Hi,
>>>
>>>             I wanted to check your issue, but I don't see any
>>>             database related parameters in your provided configs
>>>
>>>             On Fri, Aug 13, 2021 at 6:23 PM David Powell
>>>             <da...@depowell.com <mailto:da...@depowell.com>> wrote:
>>>
>>>                 I was going to open a bug report, but haven't quite
>>>                 gotten around to it yet. Sorry.
>>>
>>>                 Here's the output from /describe events;/
>>>
>>>
>>>                 *Field**
>>>                 *   *Type*  *Null*  *Key*   *Default*       *Extra*
>>>                 server_number       int     NO      PRI     <null>  
>>>                 camera_number       int     NO      PRI     <null>  
>>>                 event_number        int     NO      PRI     <null>  
>>>                 event_date  varchar(45)     NO      PRI     
>>>                     
>>>                 video_length        int     YES     
>>>                     <null>  
>>>                 filename    varchar(200)    YES     
>>>                     <null>  
>>>
>>>
>>>                 This is my main motion.conf. I can supply the
>>>                 individual camera config files but they're pretty
>>>                 simple.? I'll put one of them below the main config.
>>>
>>>                 # /usr/local/etc/motion/motion.conf
>>>                 #
>>>                 # This config file was generated by motion
>>>                 4.1.1+git20181002-062a328
>>>                 # at 2021-06-08T17:01:40
>>>
>>>
>>>                 ############################################################
>>>                 # System control configuration parameters
>>>                 ############################################################
>>>
>>>                 # Start in daemon (background) mode and release
>>>                 terminal.
>>>                 daemon on
>>>
>>>                 # Start in Setup-Mode, daemon disabled.
>>>                 setup_mode off
>>>
>>>                 # File to store the process ID.
>>>                 ; pid_file value
>>>
>>>                 # File to write logs messages into.? If not defined
>>>                 stderr and syslog is used.
>>>                 log_file /var/log/motion/motion.log
>>>
>>>                 # Level of log messages [1..9] (EMG, ALR, CRT, ERR,
>>>                 WRN, NTC, INF, DBG, ALL).
>>>                 log_level 4
>>>
>>>                 # Filter to log messages by type (COR, STR, ENC,
>>>                 NET, DBL, EVT, TRK, VID, ALL).
>>>                 log_type ALL
>>>
>>>                 # Do not sound beeps when detecting motion
>>>                 quiet on
>>>
>>>                 # Native language support.
>>>                 native_language on
>>>
>>>                 # User defined name for the camera.
>>>                 ; camera_name value
>>>
>>>                 # Numeric identifier for the camera.
>>>                 camera_id 0
>>>
>>>                 # Target directory for pictures, snapshots and movies
>>>                 ; target_dir value
>>>
>>>                 # Video device (e.g. /dev/video0) to be used for
>>>                 capturing.
>>>                 videodevice /dev/video0
>>>
>>>                 # Parameters to control video device.? See
>>>                 motion_guide.html
>>>                 ; vid_control_params value
>>>
>>>                 # Preferred color palette to be used for the video
>>>                 device
>>>                 v4l2_palette 17
>>>
>>>                 # The input number to be used on the video device.
>>>                 input -1
>>>
>>>                 # The video norm to use for video capture and TV
>>>                 tuner cards.
>>>                 norm 0
>>>
>>>                 # The frequency to set the tuner to (kHz) for TV
>>>                 tuner cards
>>>                 frequency 0
>>>
>>>                 # The Motion method to use to change the
>>>                 brightness/exposure on video device.
>>>                 auto_brightness 0
>>>
>>>                 # Device name (e.g. /dev/tuner0) to be used for
>>>                 capturing when using tuner as source
>>>                 ; tunerdevice value
>>>
>>>                 # Number of frames to capture in each roundrobin step
>>>                 roundrobin_frames 1
>>>
>>>                 # Number of frames to skip before each roundrobin step
>>>                 roundrobin_skip 1
>>>
>>>                 # Try to filter out noise generated by roundrobin
>>>                 roundrobin_switchfilter off
>>>
>>>                 # The full URL of the network camera stream.
>>>                 ; netcam_url value
>>>
>>>                 # Optional high resolution URL for rtsp/rtmp cameras
>>>                 only.
>>>                 ; netcam_highres value
>>>
>>>                 # Username and password for network camera. Syntax
>>>                 username:password
>>>                 ; netcam_userpass value
>>>
>>>                 # The method for keep-alive of network socket for
>>>                 mjpeg streams.
>>>                 netcam_keepalive on
>>>
>>>                 # The URL to use for a netcam proxy server.
>>>                 ; netcam_proxy value
>>>
>>>                 # Use less strict jpeg checks for network cameras.
>>>                 netcam_tolerant_check on
>>>
>>>                 # Use TCP transport for RTSP/RTMP connections to camera.
>>>                 netcam_use_tcp on
>>>
>>>                 # Name of mmal camera (e.g. vc.ril.camera for pi
>>>                 camera).
>>>                 ; mmalcam_name value
>>>
>>>                 # Camera control parameters (see raspivid/raspistill
>>>                 tool documentation)
>>>                 ; mmalcam_control_params value
>>>
>>>                 ############################################################
>>>                 # Image Processing configuration parameters
>>>                 ############################################################
>>>
>>>                 # Image width in pixels.
>>>                 width 640
>>>
>>>                 # Image height in pixels.
>>>                 height 480
>>>
>>>                 # Maximum number of frames to be captured per second.
>>>                 framerate 15
>>>
>>>                 # Minimum time in seconds between capturing picture
>>>                 frames from the camera.
>>>                 minimum_frame_time 0
>>>
>>>                 # Number of degrees to rotate image.
>>>                 rotate 0
>>>
>>>                 # Flip image over a given axis
>>>                 flip_axis none
>>>
>>>                 # Draw a locate box around the moving object.
>>>                 locate_motion_mode preview
>>>
>>>                 # Set the look and style of the locate box.
>>>                 locate_motion_style redbox
>>>
>>>                 # Text to be overlayed in the lower left corner of
>>>                 images
>>>                 text_left CAMERA1
>>>
>>>                 # Text to be overlayed in the lower right corner of
>>>                 images.
>>>                 text_right %Y-%m-%d\n%T-%q
>>>
>>>                 # Overlay number of changed pixels in upper right
>>>                 corner of images.
>>>                 text_changes off
>>>
>>>                 # Scale factor for text overlayed on images.
>>>                 text_scale 1
>>>
>>>                 # The special event conversion specifier %C
>>>                 text_event %Y%m%d%H%M%S
>>>
>>>                 ############################################################
>>>                 # Motion detection configuration parameters
>>>                 ############################################################
>>>
>>>                 # Always save pictures and movies even if there was
>>>                 no motion.
>>>                 emulate_motion off
>>>
>>>                 # Threshold for number of changed pixels that
>>>                 triggers motion.
>>>                 threshold 2500
>>>
>>>                 # Enable tuning of the threshold down if possible.
>>>                 threshold_tune off
>>>
>>>                 # Noise threshold for the motion detection.
>>>                 noise_level 32
>>>
>>>                 # Automatically tune the noise threshold
>>>                 noise_tune on
>>>
>>>                 # Despeckle the image using (E/e)rode or (D/d)ilate
>>>                 or (l)abel.
>>>                 despeckle_filter EedDl
>>>
>>>                 # Area number used to trigger the on_area_detected
>>>                 script.
>>>                 ; area_detect value
>>>
>>>                 # Full path and file name for motion detection mask
>>>                 PGM file.
>>>                 ; mask_file value
>>>
>>>                 # Full path and file name for privacy mask PGM file.
>>>                 ; mask_privacy value
>>>
>>>                 # The value defining how slow or fast the smart
>>>                 motion mask created and used.
>>>                 smart_mask_speed 0
>>>
>>>                 # Percentage of image that triggers a lightswitch
>>>                 detected.
>>>                 lightswitch_percent 75
>>>
>>>                 # When lightswitch is detected, ignore this many frames
>>>                 lightswitch_frames 3
>>>
>>>                 # Number of images that must contain motion to
>>>                 trigger an event.
>>>                 minimum_motion_frames 1
>>>
>>>                 # Gap in seconds of no motion detected that triggers
>>>                 the end of an event.
>>>                 event_gap 60
>>>
>>>                 # The number of pre-captured (buffered) pictures
>>>                 from before motion.
>>>                 pre_capture 6
>>>
>>>                 # Number of frames to capture after motion is no
>>>                 longer detected.
>>>                 post_capture 3
>>>
>>>                 ############################################################
>>>                 # Script execution configuration parameters
>>>                 ############################################################
>>>
>>>                 # Command to be executed when an event starts.
>>>                 ; on_event_start value
>>>
>>>                 # Command to be executed when an event ends.
>>>                 ; on_event_end value
>>>
>>>                 # Command to be executed when a picture is saved.
>>>                 ; on_picture_save value
>>>
>>>                 # Command to be executed when motion in a predefined
>>>                 area is detected
>>>                 ; on_area_detected value
>>>
>>>                 # Command to be executed when motion is detected
>>>                 ; on_motion_detected value
>>>
>>>                 # Command to be executed when a movie file is created.
>>>                 ; on_movie_start value
>>>
>>>                 # Command to be executed when a movie file is closed.
>>>                 on_movie_end java -cp /usr/local/bin/CamSummary.jar
>>>                 david/camera/SpecUpdater %f
>>>
>>>                 # Command to be executed when a camera can't be
>>>                 opened or if it is lost
>>>                 ; on_camera_lost value
>>>
>>>                 # Command to be executed when a camera that was lost
>>>                 has been found.
>>>                 ; on_camera_found value
>>>
>>>                 ############################################################
>>>                 # Picture output configuration parameters
>>>                 ############################################################
>>>
>>>                 # Output pictures when motion is detected
>>>                 picture_output best
>>>
>>>                 # Output pictures with only the pixels moving object
>>>                 (ghost images)
>>>                 picture_output_motion off
>>>
>>>                 # Format for the output pictures.
>>>                 picture_type jpeg
>>>
>>>                 # The quality (in percent) to be used in the picture
>>>                 compression
>>>                 picture_quality 75
>>>
>>>                 # Text to include in a JPEG EXIF comment
>>>                 ; picture_exif value
>>>
>>>                 # File name(without extension) for pictures relative
>>>                 to target directory
>>>                 picture_filename %Y-%m-%d/%t-%v-%C
>>>
>>>                 ############################################################
>>>                 # Snapshot output configuration parameters
>>>                 ############################################################
>>>
>>>                 # Make automated snapshot every N seconds
>>>                 snapshot_interval 0
>>>
>>>                 # File name(without extension) for snapshots
>>>                 relative to target directory
>>>                 snapshot_filename %v-%Y%m%d%H%M%S-snapshot
>>>
>>>                 ############################################################
>>>                 # Movie output configuration parameters
>>>                 ############################################################
>>>
>>>                 # Create movies of motion events.
>>>                 movie_output on
>>>
>>>                 # Create movies of moving pixels of motion events.
>>>                 movie_output_motion off
>>>
>>>                 # Maximum length of movie in seconds.
>>>                 movie_max_time 120
>>>
>>>                 # The fixed bitrate to be used by the movie encoder.
>>>                 Ignore quality setting
>>>                 movie_bps 400000
>>>
>>>                 # The encoding quality of the movie. (0=use bitrate.
>>>                 1=worst quality, 100=best)
>>>                 movie_quality 45
>>>
>>>                 # Container/Codec to used for the movie. See
>>>                 motion_guide.html
>>>                 movie_codec mp4
>>>
>>>                 # Duplicate frames to achieve "framerate" fps.
>>>                 movie_duplicate_frames off
>>>
>>>                 # Pass through from the camera to the movie without
>>>                 decode/encoding.
>>>                 movie_passthrough off
>>>
>>>                 # File name(without extension) for movies relative
>>>                 to target directory
>>>                 movie_filename %Y-%m-%d/%t-%v-%C
>>>
>>>                 # Use pipe and external encoder for creating movies.
>>>                 movie_extpipe_use off
>>>
>>>                 # Full path and options for external encoder of
>>>                 movies from raw images
>>>                 ; movie_extpipe value
>>>
>>>                 ############################################################
>>>                 # Timelapse output configuration parameters
>>>                 ############################################################
>>>
>>>                 # Interval in seconds between timelapse captures.
>>>                 timelapse_interval 0
>>>
>>>                 # Timelapse file rollover mode. See
>>>                 motion_guide.html for options and uses.
>>>                 timelapse_mode daily
>>>
>>>                 # Frame rate for timelapse playback
>>>                 timelapse_fps 30
>>>
>>>                 # Container/Codec for timelapse movie.
>>>                 timelapse_codec mpg
>>>
>>>                 # File name(without extension) for timelapse movies
>>>                 relative to target directory
>>>                 timelapse_filename %Y%m%d-timelapse
>>>
>>>                 ############################################################
>>>                 # Loopback pipe configuration parameters
>>>                 ############################################################
>>>
>>>                 # v4l2 loopback device to receive normal images
>>>                 ; video_pipe value
>>>
>>>                 # v4l2 loopback device to receive motion images
>>>                 ; video_pipe_motion value
>>>
>>>                 ############################################################
>>>                 # Webcontrol configuration parameters
>>>                 ############################################################
>>>
>>>                 # Port number used for the webcontrol.
>>>                 webcontrol_port 1800
>>>
>>>                 # Enable IPv6 addresses.
>>>                 webcontrol_ipv6 off
>>>
>>>                 # Restrict webcontrol connections to the localhost.
>>>                 webcontrol_localhost off
>>>
>>>                 # Type of configuration options to allow via the
>>>                 webcontrol.
>>>                 webcontrol_parms 2
>>>
>>>                 # Method that webcontrol should use for interface
>>>                 with user.
>>>                 webcontrol_interface 0
>>>
>>>                 # The authentication method for the webcontrol
>>>                 webcontrol_auth_method 0
>>>
>>>                 # Authentication string for the webcontrol. Syntax
>>>                 username:password
>>>                 ; webcontrol_authentication value
>>>
>>>                 # Use ssl / tls for the webcontrol
>>>                 webcontrol_tls off
>>>
>>>                 # Full path and file name of the certificate file
>>>                 for tls
>>>                 ; webcontrol_cert value
>>>
>>>                 # Full path and file name of the key file for tls
>>>                 ; webcontrol_key value
>>>
>>>                 # The cross-origin resource sharing (CORS) header
>>>                 for webcontrol
>>>                 ; webcontrol_cors_header value
>>>
>>>                 ############################################################
>>>                 # Live stream configuration parameters
>>>                 ############################################################
>>>
>>>                 # The port number for the live stream.
>>>                 stream_port 8081
>>>
>>>                 # The port number for the live substream
>>>                 substream_port 0
>>>
>>>                 # Restrict stream connections to the localhost.
>>>                 stream_localhost off
>>>
>>>                 # Authentication method for live stream.
>>>                 stream_auth_method 0
>>>
>>>                 # The authentication string for the stream. Syntax
>>>                 username:password
>>>                 ; stream_authentication value
>>>
>>>                 # Use ssl / tls for stream.
>>>                 stream_tls off
>>>
>>>                 # The cross-origin resource sharing (CORS) header
>>>                 for the stream
>>>                 ; stream_cors_header value
>>>
>>>                 # Percentage to scale the stream image on the
>>>                 webcontrol.
>>>                 stream_preview_scale 25
>>>
>>>                 # Have the stream image start on a new line of the
>>>                 webcontrol
>>>                 stream_preview_newline off
>>>
>>>                 # Method for showing stream on webcontrol.
>>>                 stream_preview_method 0
>>>
>>>                 # Quality of the jpeg images produced for stream.
>>>                 stream_quality 50
>>>
>>>                 # Provide the stream images in black and white
>>>                 stream_grey off
>>>
>>>                 # Output frames at 1 fps when no motion is detected.
>>>                 stream_motion off
>>>
>>>                 # Maximum framerate of images provided for stream
>>>                 stream_maxrate 1
>>>
>>>                 # Limit the number of images per connection
>>>                 stream_limit 0
>>>
>>>                 ############################################################
>>>                 # Database and SQL Configuration parameters
>>>                 ############################################################
>>>
>>>                 # The type of database being used if any.
>>>                 database_type mysql
>>>
>>>                 # Database name to use. For sqlite3, the full path
>>>                 and name.
>>>                 database_dbname cameras
>>>
>>>                 # The host on which the database is located
>>>                 database_host localhost
>>>
>>>                 # Port used by the database.
>>>                 database_port 3306
>>>
>>>                 # User account name for database.
>>>                 database_user <redacted>
>>>
>>>                 # User password for database.
>>>                 database_password <redacted>
>>>
>>>                 # Database wait for unlock time
>>>                 database_busy_timeout 5
>>>
>>>                 # Log to the database when creating motion triggered
>>>                 image file
>>>                 sql_log_picture off
>>>
>>>                 # Log to the database when creating a snapshot image
>>>                 file
>>>                 sql_log_snapshot off
>>>
>>>                 # Log to the database when creating motion triggered
>>>                 movie file
>>>                 sql_log_movie on
>>>
>>>                 # Log to the database when creating timelapse movie file
>>>                 sql_log_timelapse off
>>>
>>>                 # SQL query at event start. See motion_guide.html
>>>                 ; sql_query_start value
>>>
>>>                 # SQL query at event stop. See motion_guide.html
>>>                 sql_query_stop INSERT INTO events
>>>                 
>>> (server_number,camera_number,event_number,event_date,video_length,filename)
>>>                 VALUES (1,%t,%v,{ts '%C'},null,'%f');
>>>
>>>                 # SQL query string that is sent to the database.?
>>>                 See motion_guide.html
>>>                 ; sql_query
>>>
>>>                 ############################################################
>>>                 # Tracking configuration parameters
>>>                 ############################################################
>>>
>>>                 # Method used by tracking camera. See motion_guide.html
>>>                 track_type 0
>>>
>>>                 # Enable auto tracking
>>>                 track_auto off
>>>
>>>                 # Serial port of motor
>>>                 ; track_port value
>>>
>>>                 # Motor number for x-axis
>>>                 track_motorx 0
>>>
>>>                 # Set motorx reverse
>>>                 track_motorx_reverse off
>>>
>>>                 # Motor number for y-axis
>>>                 track_motory 0
>>>
>>>                 # Set motory reverse
>>>                 track_motory_reverse off
>>>
>>>                 # Maximum value on x-axis
>>>                 track_maxx 0
>>>
>>>                 # Minimum value on x-axis
>>>                 track_minx 0
>>>
>>>                 # Maximum value on y-axis
>>>                 track_maxy 0
>>>
>>>                 # Minimum value on y-axis
>>>                 track_miny 0
>>>
>>>                 # Center value on x-axis
>>>                 track_homex 128
>>>
>>>                 # Center value on y-axis
>>>                 track_homey 128
>>>
>>>                 # ID of an iomojo camera if used
>>>                 track_iomojo_id 0
>>>
>>>                 # Angle in degrees the camera moves per step on the
>>>                 X-axis with auto-track
>>>                 track_step_angle_x 10
>>>
>>>                 # Angle in degrees the camera moves per step on the
>>>                 Y-axis with auto-track.
>>>                 track_step_angle_y 10
>>>
>>>                 # Delay to wait for after tracking movement as
>>>                 number of picture frames.
>>>                 track_move_wait 10
>>>
>>>                 # Speed to set the motor to (stepper motor option)
>>>                 track_speed 255
>>>
>>>                 # Number of steps to make (stepper motor option)
>>>                 track_stepsize 40
>>>
>>>                 # Command to execute to move a camera in generic
>>>                 tracking mode
>>>                 ; track_generic_move value
>>>
>>>                 
>>> ##############################################################
>>>                 # Camera config files - One for each camera.
>>>                 
>>> ##############################################################
>>>                 camera /usr/local/etc/motion/cameraPatio.conf
>>>                 camera /usr/local/etc/motion/cameraShop.conf
>>>                 camera /usr/local/etc/motion/cameraPumpHouse.conf
>>>                 camera /usr/local/etc/motion/cameraBackYard.conf
>>>                 camera /usr/local/etc/motion/cameraPumpYard.conf
>>>                 camera /usr/local/etc/motion/cameraShed.conf
>>>                 camera /usr/local/etc/motion/cameraGate.conf
>>>
>>>                 
>>> ##############################################################
>>>                 # Directory to read '.conf' files for cameras.
>>>                 
>>> ##############################################################
>>>                 ; camera_dir /etc/motion/conf.d
>>>
>>>
>>>
>>>                 This is the /cameraPatio.conf/ file. The other files
>>>                 are very similar.
>>>
>>>                 # /usr/local/etc/motion/cameraPatio.conf
>>>                 #
>>>                 # This config file was generated by motion
>>>                 4.1.1+git20181002-062a328
>>>                 # at 2021-06-08T17:01:40
>>>
>>>
>>>                 # User defined name for the camera.
>>>                 camera_name patio
>>>
>>>                 # Target directory for pictures, snapshots and movies
>>>                 target_dir /var/www/html/cams/patio
>>>
>>>                 # The full URL of the network camera stream.
>>>                 netcam_url
>>>                 http://10.10.6.181:8181/videostream.cgi?user=
>>>                 
>>> <http://10.10.6.181:8181/videostream.cgi?user=><redacted>&pwd=
>>>
>>>                 # The method for keep-alive of network socket for
>>>                 mjpeg streams.
>>>                 netcam_keepalive off
>>>
>>>                 # Text to be overlayed in the lower left corner of
>>>                 images
>>>                 text_left Patio
>>>
>>>                 # Threshold for number of changed pixels that
>>>                 triggers motion.
>>>                 threshold 1000
>>>
>>>                 # Enable tuning of the threshold down if possible.
>>>                 threshold_tune on
>>>
>>>                 # Full path and file name for motion detection mask
>>>                 PGM file.
>>>                 mask_file /usr/local/etc/motion/patioMask.pgm
>>>
>>>                 ############################################################
>>>                 # Webcontrol configuration parameters
>>>                 ############################################################
>>>
>>>                 # Port number used for the webcontrol.
>>>                 webcontrol_port 0
>>>
>>>                 ############################################################
>>>                 # Live stream configuration parameters
>>>                 ############################################################
>>>
>>>                 # The port number for the live stream.
>>>                 stream_port 1801
>>>
>>>                 Let me know if you need any other info.
>>>
>>>                 David
>>>
>>>
>>>                 On 8/13/21 6:31 AM, tosiara wrote:
>>>>                 Could you send me your exact motion config and mysql 
>>>> command output:
>>>>                 "describe events;"
>>>>                 I will try to check
>>>>
>>>>                 On Thu, Jul 29, 2021 at 8:45 PM Shawn 
>>>> Ashe<dracutfo...@gmail.com>  <mailto:dracutfo...@gmail.com>  wrote:
>>>>>                 I would find a way to log it, at least it's a symptom you 
>>>>> can give to the motion team, and maybe something will become obvious to 
>>>>> you
>>>>>
>>>>>                 On Thu, Jul 29, 2021, 1:05 PM David 
>>>>> Powell<da...@depowell.com>  <mailto:da...@depowell.com>  wrote:
>>>>>>                 It's the %v replaceable parameter in the insert 
>>>>>> statement.  Motion generates it internally.
>>>>>>                 dp
>>>>>>
>>>>>>                 On July 29, 2021 11:26:25 AM Shawn 
>>>>>> Ashe<dracutfo...@gmail.com>  <mailto:dracutfo...@gmail.com>  wrote:
>>>>>>>                 is the event_number a counter,or based on time/etc?
>>>>>>>
>>>>>>>                 Could be the events are going off to fast and you are 
>>>>>>> getting duplicate event numbers.
>>>>>>>
>>>>>>>                 On Thu, Jul 29, 2021 at 12:15 PM David 
>>>>>>> Powell<da...@depowell.com>  <mailto:da...@depowell.com>  wrote:
>>>>>>>>                 Oh, I understand your question better now. The event 
>>>>>>>> number is generated by Motion automatically.
>>>>>>>>
>>>>>>>>                 David
>>>>>>>>
>>>>>>>>                 On July 29, 2021 11:11:01 AM David 
>>>>>>>> Powell<da...@depowell.com>  <mailto:da...@depowell.com>  wrote:
>>>>>>>>>                 My understanding is that event_number is there for 
>>>>>>>>> this very purpose - to make each event unique. I can't imagine 
>>>>>>>>> another reason to have it.
>>>>>>>>>
>>>>>>>>>                 David
>>>>>>>>>
>>>>>>>>>                 On July 29, 2021 10:46:33 
>>>>>>>>> ammotionl...@frontdesign.com  <mailto:motionl...@frontdesign.com>  
>>>>>>>>> wrote:
>>>>>>>>>>                 Hi.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 Also; "The primary key for the events table is 
>>>>>>>>>> server_number,event_number,event_date, and camera_number."
>>>>>>>>>>
>>>>>>>>>>                 So, can the server_number, event_number, event_date 
>>>>>>>>>> and camera_number be the same twice?
>>>>>>>>>>
>>>>>>>>>>                 I'm guessing server_number for sure, camera_number 
>>>>>>>>>> too. Event date? Yeah possible if it's two events in tight enough 
>>>>>>>>>> sequence and sloppy enough datetime datatype.
>>>>>>>>>>
>>>>>>>>>>                 event_number? ... doesn't sound likely but... what 
>>>>>>>>>> do i know - how does that get generated?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 Why not use an auto_intrement for primary key and 
>>>>>>>>>> have a composite index on those other columns instead?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 //Lars
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 On 2021-07-29 16:59, John L. Poole wrote:
>>>>>>>>>>
>>>>>>>>>>                 The error message you shared, e.g. trigger of a 
>>>>>>>>>> primary key constraint, suggests an error in program design.   If 
>>>>>>>>>> you have a table with unique constraints, e.g. every entry must be 
>>>>>>>>>> unique, you don't try to insert the same record twice.
>>>>>>>>>>
>>>>>>>>>>                 I recommend you file a bug so everything is 
>>>>>>>>>> documented well and then the developers can determine why they are 
>>>>>>>>>> attempting to insert something already present, or at least testing 
>>>>>>>>>> for presence before attempting to insert a record that may already 
>>>>>>>>>> exist.
>>>>>>>>>>
>>>>>>>>>>                 On 7/29/2021 7:27 AM, David Powell wrote:
>>>>>>>>>>
>>>>>>>>>>                 This is the whole SQL section of motion.conf:
>>>>>>>>>>
>>>>>>>>>>                 
>>>>>>>>>> ############################################################
>>>>>>>>>>                 # Database and SQL Configuration parameters
>>>>>>>>>>                 
>>>>>>>>>> ############################################################
>>>>>>>>>>
>>>>>>>>>>                 # The type of database being used if any.
>>>>>>>>>>                 database_type mysql
>>>>>>>>>>
>>>>>>>>>>                 # Database name to use. For sqlite3, the full path 
>>>>>>>>>> and name.
>>>>>>>>>>                 database_dbname cameras
>>>>>>>>>>
>>>>>>>>>>                 # The host on which the database is located
>>>>>>>>>>                 database_host localhost
>>>>>>>>>>
>>>>>>>>>>                 # Port used by the database.
>>>>>>>>>>                 database_port 3306
>>>>>>>>>>
>>>>>>>>>>                 # User account name for database.
>>>>>>>>>>                 database_user <redacted>
>>>>>>>>>>
>>>>>>>>>>                 # User password for database.
>>>>>>>>>>                 database_password <redacted>
>>>>>>>>>>
>>>>>>>>>>                 # Database wait for unlock time
>>>>>>>>>>                 database_busy_timeout 5
>>>>>>>>>>
>>>>>>>>>>                 # Log to the database when creating motion triggered 
>>>>>>>>>> image file
>>>>>>>>>>                 sql_log_picture off
>>>>>>>>>>
>>>>>>>>>>                 # Log to the database when creating a snapshot image 
>>>>>>>>>> file
>>>>>>>>>>                 sql_log_snapshot off
>>>>>>>>>>
>>>>>>>>>>                 # Log to the database when creating motion triggered 
>>>>>>>>>> movie file
>>>>>>>>>>                 sql_log_movie on
>>>>>>>>>>
>>>>>>>>>>                 # Log to the database when creating timelapse movie 
>>>>>>>>>> file
>>>>>>>>>>                 sql_log_timelapse off
>>>>>>>>>>
>>>>>>>>>>                 # SQL query at event start.  See motion_guide.html
>>>>>>>>>>                 ; sql_query_start value
>>>>>>>>>>
>>>>>>>>>>                 # SQL query at event stop.  See motion_guide.html
>>>>>>>>>>                 sql_query_stop INSERT INTO events 
>>>>>>>>>> (server_number,camera_number,event_number,event_date,video_length,filename)
>>>>>>>>>>  VALUES (1,%t,%v,{ts '%C'},null,'%f');
>>>>>>>>>>
>>>>>>>>>>                 # SQL query string that is sent to the database.  
>>>>>>>>>> See motion_guide.html
>>>>>>>>>>                 ; sql_query
>>>>>>>>>>
>>>>>>>>>>                 I had the query in sql_query but I moved it to 
>>>>>>>>>> sql_query_stop.  That didn't help.
>>>>>>>>>>
>>>>>>>>>>                 David
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 On 7/29/21 8:17 AM, Damian via Motion-user wrote:
>>>>>>>>>>
>>>>>>>>>>                 The SQL statement in motion.conf is
>>>>>>>>>>                 INSERT INTO events 
>>>>>>>>>> (server_number,camera_number,event_number,event_date,video_length,filename)
>>>>>>>>>>  VALUES (1,%t,%v,{ts '%C'},null,'%f');
>>>>>>>>>>
>>>>>>>>>>                 The records /are/ there in the database, and I run a 
>>>>>>>>>> custom program to extract them for displaying the snapshots and 
>>>>>>>>>> movies in a web page
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 Which sql_log_* statements are enabled?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 _______________________________________________
>>>>>>>>>>                 Motion-user mailing list
>>>>>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>>>>>                 
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>>>>>                 https://motion-project.github.io/  
>>>>>>>>>> <https://motion-project.github.io/>
>>>>>>>>>>
>>>>>>>>>>                 
>>>>>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 _______________________________________________
>>>>>>>>>>                 Motion-user mailing list
>>>>>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>>>>>                 
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>>>>>                 https://motion-project.github.io/  
>>>>>>>>>> <https://motion-project.github.io/>
>>>>>>>>>>
>>>>>>>>>>                 
>>>>>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>>>>>>
>>>>>>>>>>                 --
>>>>>>>>>>
>>>>>>>>>>                 John Laurence Poole
>>>>>>>>>>                 1566 Court ST NE
>>>>>>>>>>                 Salem OR 97301-4241
>>>>>>>>>>                 707-812-1323 office
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>                 _______________________________________________
>>>>>>>>>>                 Motion-user mailing list
>>>>>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>>>>>                 
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>>>>>                 https://motion-project.github.io/  
>>>>>>>>>> <https://motion-project.github.io/>
>>>>>>>>>>
>>>>>>>>>>                 
>>>>>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>>>>>>
>>>>>>>>>>                 _______________________________________________
>>>>>>>>>>                 Motion-user mailing list
>>>>>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>>>>>                 
>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>>>>>                 https://motion-project.github.io/  
>>>>>>>>>> <https://motion-project.github.io/>
>>>>>>>>>>
>>>>>>>>>>                 
>>>>>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>>>>                 _______________________________________________
>>>>>>>>                 Motion-user mailing list
>>>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>>>                 
>>>>>>>> https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>>>                 https://motion-project.github.io/  
>>>>>>>> <https://motion-project.github.io/>
>>>>>>>>
>>>>>>>>                 
>>>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>>>                 _______________________________________________
>>>>>>>                 Motion-user mailing list
>>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>>                 
>>>>>>> https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>>                 https://motion-project.github.io/  
>>>>>>> <https://motion-project.github.io/>
>>>>>>>
>>>>>>>                 
>>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>>                 _______________________________________________
>>>>>>                 Motion-user mailing list
>>>>>>                 Motion-user@lists.sourceforge.net  
>>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>>                 https://lists.sourceforge.net/lists/listinfo/motion-user 
>>>>>>  <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>>                 https://motion-project.github.io/  
>>>>>> <https://motion-project.github.io/>
>>>>>>
>>>>>>                 
>>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>>                 _______________________________________________
>>>>>                 Motion-user mailing list
>>>>>                 Motion-user@lists.sourceforge.net  
>>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>>                 https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>>                 https://motion-project.github.io/  
>>>>> <https://motion-project.github.io/>
>>>>>
>>>>>                 
>>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>>                 _______________________________________________
>>>>                 Motion-user mailing list
>>>>                 Motion-user@lists.sourceforge.net  
>>>> <mailto:Motion-user@lists.sourceforge.net>
>>>>                 https://lists.sourceforge.net/lists/listinfo/motion-user  
>>>> <https://lists.sourceforge.net/lists/listinfo/motion-user>
>>>>                 https://motion-project.github.io/  
>>>> <https://motion-project.github.io/>
>>>>
>>>>                 
>>>> Unsubscribe:https://lists.sourceforge.net/lists/options/motion-user  
>>>> <https://lists.sourceforge.net/lists/options/motion-user>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...

------------------------------



------------------------------

Subject: Digest Footer

_______________________________________________
Motion-user mailing list
Motion-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/motion-user


------------------------------

End of Motion-user Digest, Vol 182, Issue 24
********************************************

Reply via email to